我在这个程序中尝试做的是使用readline()从文本文件(更具体地说,是dblp数据集)中读取并解析它。
然后,我使用Python库Networkx构建了一个图(节点是作者,如果两个作者一起写了一篇论文,则两个作者之间存在边,边表示他们合作的频率),然后将该图以gml格式写入文件。
我面临的问题是,作者的名字可能是UTF编码的。在以gml格式写入文件时,我得到以下错误
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position
3: ordinal not in range(128)networkx中的read_gml()函数有一个编码参数,但write_gml()没有。据我所知,write_gml()内部使用的是拉丁文-1编码。
我如何才能以某种方式操纵它,使其在我的情况下工作?
我尝试使用编解码器打开我想要写入的文件,但似乎只对write()函数有效,而对write_gml()无效。
发布于 2014-07-08 16:44:22
尝试在python脚本的开头添加以下字符串:
# -*- coding: utf-8 -*-https://stackoverflow.com/questions/24483250
复制相似问题