在 python 中打开文件时出现奇怪的错误
Weird error opening a file in python
我正在尝试使用配置解析器读取文件路径,然后从该文件中读取
>>> cfg_file = './crawler.config'
>>> config = SafeConfigParser()
>>> config.read(cfg_file)
['./crawler.config']
>>> f = config.get('default', 'sites_file')
>>> with open(f) as fp:
... print fp.read()
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: u'"/home/avi/src/typo.csv"'
>>>
我认为 Unicode 有问题。我想不出解决办法。如果我直接将文件名作为字符串传递,它就可以正常工作。任何解决此问题的帮助将不胜感激。
f = config.get('default', 'sites_file')
可能是 f 的值将是“/home/avi/src/typo.csv”
不存在
with open(f) as fp:
print fp.read()
您正在尝试读取一个不存在的文件
尝试将配置中 'sites_file' 的值从 "/home/avi/src/typo.csv"
更改为 /home/avi/src/typo.csv
或:
打开文件前替换引号。
例如:
with open(f.replace('"', '')) as fp:
print fp.read()
我正在尝试使用配置解析器读取文件路径,然后从该文件中读取
>>> cfg_file = './crawler.config'
>>> config = SafeConfigParser()
>>> config.read(cfg_file)
['./crawler.config']
>>> f = config.get('default', 'sites_file')
>>> with open(f) as fp:
... print fp.read()
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: u'"/home/avi/src/typo.csv"'
>>>
我认为 Unicode 有问题。我想不出解决办法。如果我直接将文件名作为字符串传递,它就可以正常工作。任何解决此问题的帮助将不胜感激。
f = config.get('default', 'sites_file')
可能是 f 的值将是“/home/avi/src/typo.csv”
不存在
with open(f) as fp:
print fp.read()
您正在尝试读取一个不存在的文件
尝试将配置中 'sites_file' 的值从 "/home/avi/src/typo.csv"
/home/avi/src/typo.csv
或:
打开文件前替换引号。
例如:
with open(f.replace('"', '')) as fp:
print fp.read()