我在Windows 7上运行了以下小程序:
import csv
filename = raw_input('Enter input file name: ')
outfile = raw_input('Enter output file name: ')
with open(filename) as f, open(outfile,'w') as f2:
writer = csv.writer(f2, delimiter = '\n')
for line in f:
x, y = line.split()
writer.writerow([y]*int(x))
但是,在Mac上运行相同的代码,当我们为输入文件提供input.txt
时,我们会收到"Error 2: input.txt, no such file or directory"
错误。
到目前为止,我们已经确认我们在与输入文件相同的工作目录中运行。我们尝试输入完整路径(带或不带引号)而不仅仅是文件名。我们也试过明确指定编码 - utf8 - 即使我不确定是否有必要。我们只是保持相同的“没有这样的文件或目录”错误。再次,这在Windows下运行良好。有什么想法吗?
更新:好的,文件名中不可见的前导空格被证明是问题所在。一旦我们摆脱了它就会运行良好(尽管OSX首先把它放在那里是一个谜......)