'对于文件名中的文件名:'导致IOError:[Errno 2]没有这样的文件或目录:'t'python [duplicate]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了'对于文件名中的文件名:'导致IOError:[Errno 2]没有这样的文件或目录:'t'python [duplicate]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
我想在一个文件中添加两个或更多文件以及所有信息。我的代码是:
def add_file(filenames, output_file):
with open(output_file, 'w') as master_file:
master_file.write('C/A,UNIT,SCP,DATEn,TIMEn,DESCn,ENTRIESn,EXITSn
')
for filename in filenames:
with open(filename, 'r') as infile:
master_file.write(infile.read())
当我打电话把所有文件都这样:
add_file('turnstile_170603.txt','out.txt')
节目:
IOError:[Errno 2]没有这样的文件或目录:'t'
为什么?我做错了什么?
答案
你传递了一个字符串作为filenames
,函数用字符迭代它。传递一个列表。将函数从add_file
重命名为add_files
可能更好。
小心out.txt
;如果你想多次调用这个函数,你应该以追加模式而不是'w'模式打开它。
另一答案
你正在为filenames
传递一个字符串,所以函数在字符串中迭代它。通过列表来解决这个问题。
另一答案
for filename in filenames:
上面的行是通过你的第一个参数迭代一个,这恰好是一个字符串。
当你拨打这一行时
with open(filename, 'r') as infile:
'filename'是文件名中的项目。一旦到达字符串的第一个字母,就会发生错误。
以上是关于'对于文件名中的文件名:'导致IOError:[Errno 2]没有这样的文件或目录:'t'python [duplicate]的主要内容,如果未能解决你的问题,请参考以下文章
我无法从另一个文件夹导入函数,它导致导入错误(ImportError:无法导入名称'token_required')
reference to 'X' is ambiguous 解决
爬坑PIL,文件名Image与类Image()重名,导致引用new,open不成功,报错 type object 'Image' has no attribute 'new