我有一个Python代码来对文本文件执行某些操作。我需要在大约200多个文本文件上运行此代码,这些文件都存储在同一个文件夹中。
我希望代码一次打开一个文本文件,执行操作,然后重新开始使用下一个文本文件。
你能否就我如何做到这一点给出一些指示?
我的代码是这样的:
def main():
text_file = open("filename.txt","r")
#operations
text_file.close()
main()
答案 0 :(得分:2)
使用listdir
迭代文件。
import os
def main():
for filename in os.listdir(somedir):
filepath = os.path.join(somedir, filename)
if os.path.isfile(filepath): # Is filepath really a file, not a directory?
text_file = open(filepath,"r")
#operations
text_file.close()
main()
如评论中所述,最好使用with。
答案 1 :(得分:-1)
不确定您有多少个文件,但您也可以查看 http://www.dabeaz.com/generators-uk/genfind.py然后将其发送到http://www.dabeaz.com/generators-uk/genopen.py
这是处理大量数据的理想解决方案。 谢谢戴夫; - )