我想使用python27读取csv文件,但出现类似“ TypeError的错误:'encoding'是此函数的无效关键字参数”

L.E*_*eth 4 python csv encoding python-2.7

这是我的代码:

import csv
file  = open('traintag1.csv','r',encoding='utf-8')
csv_reader = csv.reader(file)
for row in csv_reader:
    print row[-2]
Run Code Online (Sandbox Code Playgroud)

然后遇到类似标题的错误:

file = open('traintag1.csv','r',encoding ='utf-8')TypeError:“ encoding”是此函数的无效关键字参数”

我想使用'encoding ='utf-8',因为当文件装满中文时,在读取文件以在屏幕上打印后,单词是乱七八糟的。当我from io import open在头上添加另一条线时,再次出现如下错误:

UnicodeDecodeError:'utf8'编解码器无法解码位置29的字节0xbb:无效的起始字节

Mar*_*ans 7

使用codecs打开文件,这允许指定的编码,例如:

import csv
import codecs

with codecs.open('traintag1.csv', 'rb', encoding="utf-8") as f_input:
    csv_reader = csv.reader(f_input)

    for row in csv_reader:
        print row[-2]
Run Code Online (Sandbox Code Playgroud)

  • 谢谢你,我只是被python2.7引起的编码问题惹恼了 (2认同)