下面是我用来在文件中搜索特定字符串的代码。当我打开它生成的结果文件时,我的结果就在那里。你知道吗
但是——它们被复制了好几次,我一辈子都搞不懂为什么。你知道吗
import os
global file_list
filename = raw_input("Enter a portion of the file name(s) you would like to search in: ")
results = raw_input("What file would you like results saved to: ")
file_list=[]
FO = open(results, 'w')
for dirname, subdirlist, files in os.walk("."):
for filenames in files:
file = os.path.join(dirname, filenames)
file_list.append(file)
if str(file).find(filename) >= 0:
for line in file:
FI = open(file, 'r')
for line in FI:
if len(line.split(':')) > 30:
line_list=line.split(':')
if line_list[29] == '5':
FO.write(line)
print("Files save to " + ("\"") + results + ("\""))
你有
for line in
两次。你知道吗在第一种情况下,
for line in file
指的是file
,一个字符串文件名。当python遇到字符串上的for循环时,python会将字符串分解为单个字符,并对每个字符执行一次循环。你知道吗由于您从不使用这些字符,因此可能不正确,并且会导致不同数量的重复。你知道吗
例如,文件“data123”将生成7次相同的结果,因为“data123”中有7个字符。你知道吗
相关问题 更多 >
编程相关推荐