Python 2.7 如何使用python确认所需文件位于特定文件夹中,并且是否可访问?

Python 2.7 如何使用python确认所需文件位于特定文件夹中,并且是否可访问?,python-2.7,Python 2.7,我在文件夹应用程序中有5个文件: App| |--A.txt |--B.txt |--C.txt |--D.txt |--E.txt |--Run.py |--Other Folders or Files 现在我想知道文件(A.txt,B.txtC.txt,C.txt,D.txt,E.txt)是否存在,如果存在,我想调用一个函数Cleaner,它将为该函数提供这些文件的名称。我已经写了这段代码,但是什么都没有发生。函数没有被调用 import glob

我在文件夹应用程序中有5个文件:

App|
   |--A.txt
   |--B.txt
   |--C.txt
   |--D.txt
   |--E.txt
   |--Run.py
   |--Other Folders or Files
现在我想知道文件(A.txt,B.txtC.txt,C.txt,D.txt,E.txt)是否存在,如果存在,我想调用一个函数Cleaner,它将为该函数提供这些文件的名称。我已经写了这段代码,但是什么都没有发生。函数没有被调用

import glob
import csv
import itertools

files = glob.glob("*.txt")

i = 0

def sublist(a, b):
    seq = iter(b)
    try:
        for x in a:
            while next(seq) != x: pass
        else:
            return True
    except StopIteration:
        pass
    return False

required_files = ['Alternate_ADR6_LFB1.txt', 'Company_Code.txt', 'Left_LIFNR.txt', 'LFA1.txt', 'LFB1.TXT', 'LFBK.TXT']

if sublist(required_files,files):
    for files in required_files:
        try:
            f = open(files , 'r')
            f.close()
        except IOError as e:
            print 'Error opening or accessing files'
    i = 1
else:
    print 'Required files are not in correct folder'

if i == 1:
    for files in required_files:
        Cleansing(files)

def Cleansing(filename):
    with open('filename', 'rb') as f_input:
        ...
        ...
            break

    with open('filename', 'rb') as f_input, open('filename_Cleaned.csv', 'wb') as f_output:
        csv_output = csv.writer(f_output)
        csv_output.writerow('something')
Upadate


我想现在我可以调用这个函数,也可以检查有效的文件,但它不是pythonic。我无法打开或创建一个文件名为文件名加上_cleaned:filename _cleaned.csv的文件。

您想检查文件夹中是否有文件列表(
必需文件
)。
通过
files=glob.glob(“*.txt”)

所以第一个问题是:
由于顺序不重要,我们可以使用集合:

if set(required_files) <= set(files):
    # do stuff
else:
    #print warning

“清洗”!='清理“
…很抱歉,在这里写的时候我犯了错误,但为什么要降级我的问题,因为它不清楚,而且写得很糟糕。请阅读并提供一个。@jornsharpe已更正请删除该降级或告诉我更多错误,我将很乐意倾听:)你能告诉我如何确认这五个文件是我所需要的吗。
for filename in required_files:
    Cleansing(filename)

def Cleansing(filename):
    with open(filename, 'rb') as f_input, open(filename+'_Cleaned.csv', 'wb') as f_output:
        #read stuff in f_input
        #write stuff in f_output