在cp1252上强制使用UTF-8(Python3) [英] Forcing UTF-8 over cp1252 (Python3)
本文介绍了在cp1252上强制使用UTF-8(Python3)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我编写了一些利用Biopython Entrez包装器的代码.代码在我以前的Win10笔记本电脑(Python 3.5.1)上运行良好,但是我刚刚将代码移植到了新的Win10笔记本电脑上,每个笔记本电脑都安装了相同版本的软件包,并且安装了Python,现在出现解码错误./p>
回溯错误导致获取文本的功能-当它应该使用UTF-8时,它尝试使用cp1252解码文本.我知道有人问过类似的问题,但是没有一个人解决过在软件包中发生的这个问题(在我的案例中是Biopython).在Python/lib中复制UTF-8编码文件并将其重命名为cp1252.py可以解决此问题,但这显然不是一个长期解决方案.
文件"C:\ Users \ arjun \ AppData \ Local \ Programs \ Python \ Python35-32 \ lib \ encodings \ cp1252.py",在解码中返回codecs.charmap_decode(input,self.errors,decoding_table)[0]UnicodeDecodeError:"charmap"编解码器无法解码位置21715的字节0x81:字符映射为< undefined>
解决方案
如果您使用的是Python 3.x,请使用
Use the 这篇关于在cp1252上强制使用UTF-8(Python3)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋! io
模块进行阅读( 解决方案 io
module for reading if you're using Python 3.x (https://docs.python.org/2/library/io.html#io.open).
By default, it will use the encoding specified on its running platform. You can also specify your own encoding as explained in the docs.
查看全文