如何仅在目录中迭代文本文件?到目前为止,我所拥有的是;
for file in glob.glob('*'):
f = open(file)
text = f.read()
f.close()
这有效,但是我必须将我的 .py 文件存储在同一目录(文件夹)中才能运行,因此迭代包括 .py 文件本身。理想情况下,我想要命令的是;
或者...
我确定我要求的东西相当直接,但我不知道如何进行。它可能值得我强调,我通过反复试验获得了 glob 模块,所以如果这是绕过这个特定方法的错误方法,请随时纠正我!谢谢。
该glob.glob
函数实际上采用通配模式作为其参数。例如,"*.txt"
while 匹配名称以.txt
.
以下是如何使用它:
for file in glob.glob("*.txt"):
f = open(file)
text = f.read()
f.close()
但是,如果您想排除某些特定文件,例如.py
文件,则 globbing 的语法不直接支持,如解释here。
在这种情况下,您需要获取这些文件,并手动排除它们:
pythonFiles = glob.glob("*.py")
otherFiles = [f for f in glob.glob("*") if f not in pythonFiles]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句