如何修复python3错误:未定义名称unicode

时间:2018-10-31 17:55:59

标签: python python-3.x unicode

我正在一个openstreetmap项目中,并且具有以下代码

class UnicodeDictWriter(csv.DictWriter, object):  
            """Extend csv.DictWriter to handle Unicode input"""  

    def writerow(self, row):  
        super(UnicodeDictWriter, self).writerow({
        k: (v.encode('utf-8') if isinstance(v, unicode) else v) for k, v in row.items()})  

    def writerows(self, rows):  
         for row in rows:  
             self.writerow(row)  

这使我抛出错误消息名称unicode的未定义,研究没有提供解决它的线索。如何将代码修改为有效的代码? (请耐心等待,我还在学习中)

1 个答案:

答案 0 :(得分:0)

看起来像

isinstance(v, unicode)

似乎是检查对象是否为unicode的Python2方法。使用Python3,您将字节作为实例,因此请尝试使用

not isinstance(v, bytes)

相反。