这是我在pycharm中的代码:
#coding=utf-8
import csv
path=r'D:NLPcv082_11080.csv'
with open(path) as f: # 采用b的方式处理可以省去很多问题
reader = csv.reader(f)
for row in reader:
print reader
但它总是给出这个错误:
IOError: [Errno 22] 无效模式 ('r'( 或文件名: '\xe2\x80\xaaD:\NLP\cv082_11080.csv'
但是当我在 Python 命令行中运行代码时,它运行良好。然后我在pycharm中掠夺设置,但是文件编码的选项是正确的,项目和IDE编码都是UTF-8。我该如何解决这个问题?
您收到错误是因为您的路径中包含一些不可见的字符(如错误消息所示(:
IOError: [Errno 22] invalid mode ('r') or filename: 'xe2x80xaaD:\NLP\cv082_11080.csv' in pycharm
^^^^^^^^^^^^
删除整行:
path=r'D:NLPcv082_11080.csv'
然后再次手动输入。您可能从某处复制粘贴了路径,并且文本编辑器未显示不可见字符。
这些字符是u202a
的UTF-8编码,这是一个从左到右的标记。
问题出在编码造成的路径错误。也许第一行代码 没有起到作用建议#coding=utf-8修改为
# 编码:UTF-8
注意 # 和 coding 之间有一个空格。