编码默认值

节选自《流畅的python》4.5节处理文本文件

  • 如果打开文件时没有指定encoding参数,默认值由locale.getpreferredencoding()提供。
  • 如果系统设定了PYTHONIOENCODING环境变量,sys.stdout/stdin/stderr的编码使用设定的值。否则继承自所在的控制台。
  • 如果输入/输出重定向到文件,则编码默认值由locale.getpreferredencoding()定义。
  • Python在二进制数据和字符串数据之间转换时,默认使用sys.getdefaultencoding()获得的编码。
  • sys.getfilesystemencoding()用于编解码文件名称(不是文件内容)。把字符串参数作为文件名传递给open()函数时就会使用它。

Windows用户更容易遇到编码问题,关于编码默认值的最佳建议是:别依赖默认值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值