wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Windows下的Python 3的open()的默认编码. sys.getdefaultencoding()设置未得到尊重大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我已经在这个问题上拔了几个小时了. @R_817_7225@文件,我想使用django的makemessages命令生成,它在Linux环境中工作正常,它实际上以一种理智的方式处理语言环境设置.但是,当我在Windows下尝试相同的事情时,每次python尝试打开文件时,它都会假定它是用cp932(SHIFT-JIS)编码的,这会导致各种各样的破坏. 手动将encoding =’utf-8’添加到每个打开的调
我已经在这个问题上拔了几个小时了.

我有一个消息文件,我想使用django的makemessages命令生成,它在Linux环境中工作正常,它实际上以一种理智的方式处理语言环境设置.但是,当我在Windows下尝试相同的事情时,每次python尝试打开文件时,它都会假定它是用cp932(SHIFT-JIS)编码的,这会导致各种各样的破坏.

手动将encoding =’utf-8’添加到每个打开的调用都有效,但这不是修复问题的好方法.有没有办法强制打开使用特定的认编码?

> sys.getdefaultencoding()返回’utf-8′,由于某些神秘的原因,此设置不受尊重
> PYTHONIOENCODING和PYTHONENCODING都设置为’utf-8′
>我的代码页设置为cP65001

这是我的python版本字符串:

win32上的Python 3.3.2(v3.3.2:d047928ae3f6,2013年5月16日,00:06:53)[MSC v.1600 64位(AMD64)]

编辑:我注意到locale.getpreferredencoding()返回cp932,所以我想找到一个使用utf-8作为值的Windows语言环境就可以了.这样的事情甚至存在吗?

解决方法@H_674_36@
试试这个

import locale
locale.setlocale(locale.LC_ALL,'en_US.Utf-8')

@H_675_47@

大佬总结

以上是大佬教程为你收集整理的Windows下的Python 3的open()的默认编码. sys.getdefaultencoding()设置未得到尊重全部内容,希望文章能够帮你解决Windows下的Python 3的open()的默认编码. sys.getdefaultencoding()设置未得到尊重所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。