【发布时间】:2019-08-11 07:00:14
【问题描述】:
我有 2 个文件 a.txt 和 b.txt
a.txt 包含带有 2 个空行的文本“T Mobile Rider”。
b.txt 包含 2 个空行,后跟文本“Iphone”。
代码
import os
for (dirname,dirs,files) in os.walk('.'):
for filename in files:
if filename.endswith('.txt'):
thefile = os.path.join(dirname,filename)
size = (os.path.getsize(thefile),thefile)
if size[0] == 22 or size[0] == 23:
print ('T-Mobile:',thefile)
continue
fhand = open(thefile,'r')
lines = list()
for line in fhand:
lines.append(line)
#print (lines)
fhand.close()
if len(lines) == 3 and lines[2].startswith('Iphone'):
print ('iPhone:', thefile)
continue
我的输出
T-Mobile: .\Captures\a.txt
T-Mobile: .\Captures\b.txt
期望的输出
T-Mobile: .\Captures\a.txt
iPhone: .\Captures\b.txt
【问题讨论】:
-
问题不是很清楚。请张贴文本文件的内容。另外,我在代码中看到了很多幻数和硬代码,说实话看起来不太合乎逻辑。
-
不相关:只做
lines = list(fhand)而不是你的循环
标签: python file file-io os.walk