【发布时间】:2013-06-19 06:04:39
【问题描述】:
您好,我正在就遇到的问题寻求帮助。我想仅在某些文件类型中搜索我的数据所在的目录(如下所示)。下面是我的代码,但它不能正常工作。
当前输出是两个结果之一。要么只打印文件的第一行,要么只打印空白结果。
好的,这就是我想要做的。我想搜索仅列出 csv 文件的目录。然后我想做的是让循环逐行读取每个文件并打印文件中的每一行,然后对其余的 csv 文件重复此操作。
谁能告诉我如何编辑下面的代码以仅搜索 CSV 文件,以及如何打印文件中的每一行,然后重复下一个 CSV 文件,直到找到并打开所有 CSV 文件。这可能吗?
import os
rootdir= 'C:\Documents and Settings\Guest\My Documents\Code'
def doWhatYouWant(line):
print line
for subdir, dirs, files in os.walk(rootdir):
for file in files:
f=open(file,'r')
lines = f.readlines()
f.close()
f=open(file,'wU')
for lines in lines:
newline=doWhatYouWant(line)
f.write(newline)
f.close
感谢您的帮助。
【问题讨论】:
-
您需要在
rootdir字符串中添加r前缀,以防止反斜杠被解释为转义字符。为了只处理 CSV 文件,您可以使用 my answer 来解决相关问题,除了使用'*.csv'作为模式而不是显示的模式。此外,最后,您需要一个f.close()来实际调用该方法。
标签: python csv directory readlines