簡體   English   中英

用於寫入文件的 UnicodeDecodeError

[英]UnicodeDecodeError for writing file

我知道這是一個非常常見的錯誤,但這是我第一次在嘗試寫入文件時遇到它。

我正在使用networkx處理用於網絡分析的圖形,當我嘗試寫入任何格式時:

nx.write_gml(G, "Graph.gml")
nx.write_pajek(G, "Graph.net")
nx.write_gexf(G, "graph.gexf")

我得到:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 2, in write_pajek
  File "/Library/Python/2.7/site-packages/networkx/utils/decorators.py", line 263, in _open_file
    result = func(*new_args, **kwargs)
  File "/Library/Python/2.7/site-packages/networkx/readwrite/pajek.py", line 100, in write_pajek
    path.write(line.encode(encoding))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 19: ordinal not in range(128)

我還沒有找到這方面的文檔,所以很困惑。

想知道您是否可以使用編解碼器模塊來解決它。 在提供給networkx之前,只需按如下方式通過編解碼器創建一個文件對象。

前任,

import codecs
f = codecs.open("graph.gml", "w", "utf-8")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM