我正在尝试读取一些特定目录内的文件,例如。 我正在尝试使用python2.7 +版本。这是我的要求:
查找目录以输出文件夹中的B1234(此处为1234为nr)开头 如果目录存在,则转到仅以TEST_开头的目录 只读文件以YYYY.txt结尾 但是它可以驻留在子目录中(名称在这里并不重要) 我试图使下面的代码工作,但徒劳无功
for root, dirs, files in os.walk('output'):
for file in files:
if file.startswith('test') and file.endswith('_YYYY.txt'):
try:
f = open(os.path.abspath(os.path.join(root,file)) , 'r')
except:
print 'oops'
问题在这里我可以找到所有需要的文件,但也可以找到不需要的目录。 我想像那样使用
for dir in dirList:
if dir startswith(B1234)
for testdir in os.listdir(dir)
if dir.startswiht(TEST_)
goto dir
search for file
如果您需要更多信息,请提供任何帮助。
答案 0 :(得分:0)
我认为您需要在此处进行更改:
for root, dirs, files in os.walk('output'):
for dir in dirs:
if dir.startswith('B1234') is False:
continue
for r, drs, fls in os.walk(dir):
# now write your code here