下面的代码是我正在编写的程序的一部分,该程序在每个.py,.sh上运行一个方法。或目录及其文件夹中的.pl文件。
for root, subs, files in os.walk("."):
for a in files:
if a.endswith('.py') or a.endswith('.sh') or a.endswith('.pl'):
scriptFile = open(a, 'r')
writer(writeFile, scriptFile)
scriptFile.close()
else:
continue
在编写程序时,它可以在我编写它的目录树中工作,但是当我将其移动到另一个文件夹中尝试时,出现以下错误消息:
Traceback (most recent call last):
File "versionTEST.py", line 75, in <module>
scriptFile = open(a, 'r')
IOError: [Errno 2] No such file or directory: 'enabledLogSources.sh'
我知道发生了一些奇怪的事情,因为该文件绝对存在。
最佳答案
您需要在根目录之前添加文件名
scriptFile = open(root + '/' + a, 'r')