首页 文章

charmap编解码器无法编码位置xx - xx中的字符

提问于
浏览
0

我想在python 2.7.x中使用unicodecsv python库

import codecs
import unicodecsv

def read(self, path):
    with codecs.open(path, "rb", encoding = "utf-8") as f:
        r = unicodecsv.reader(f, encoding = 'utf-8')    
        row = r.next()
        print row


read("unicode.csv")

Error: charmap编解码器无法编码位置xx - xx中的字符

我已经使用txt编辑器手动将我的csv文件转换为utf-8,所以我确信输入文件没问题

1 回答

  • 0

    我发现你的代码几乎没有问题:

    def read(self, path):
    

    你在 class 内使用了 self no

    codecs.open 打开文件后,你可以使用标准的python csv 阅读器 .

    经过一些修改:

    f = "/home/dzagorulkin/workspace/zont/file.txt"
    
    import codecs
    #import unicodecsv
    
    def read(path):
        with codecs.open(path, "rb", encoding = "utf-8") as f:            
            for line in f:
                print line
    read(f)
    

    我没有使用ASCII文件和输出:

    МеняДимазовут! МеняДимазовут!

相关问题