python中的字符串编码问题——3.各操作系统下的不同编码方式

Posted 米仓山下

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中的字符串编码问题——3.各操作系统下的不同编码方式相关的知识,希望对你有一定的参考价值。

各操作系统下的不同编码方式
 
先看一下
linux,python2.7
>>> B = b‘xc3x84xc3xa8‘
>>> B.decode(‘utf-8‘)
u‘xc4xe8‘
>>> type(B)
<type ‘str‘>
>>>  
 
windows,python2.7,python shell
>>> B = b‘xc3x84xc3xa8‘
>>> B.decode(‘utf-8‘)
u‘xc4xe8‘
>>> print B.decode(‘utf-8‘)

>>>
 
windows,python2.7,python cmd控制台
>>> B = b‘xc3x84xc3xa8‘
>>> B.decode(‘utf-8‘)
u‘xc4xe8‘
>>> print B.decode(‘utf-8‘)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeEncodeError: ‘gbk‘ codec can‘t encode character u‘xc4‘ in position 0: il
legal multibyte sequence
>>>
 
三种环境下不同输出的原因:
 
windows控制台默认采用GBK编码,liunx默认采用UTF-8编码
------------------------------------------------------
查看linux默认编码:
[[email protected] ~]# env |grep LANG
LANG=zh_CN.UTF-8
------------------------------------------------------
查看windows控制台默认编码:
cmd打开控制台---->属性---->查看编码为936(简体中文GBK)
(进一步在linux和windows下新建文本文件查看编码方式果然没错,证实。)









































以上是关于python中的字符串编码问题——3.各操作系统下的不同编码方式的主要内容,如果未能解决你的问题,请参考以下文章

python中的字符问题

python中的编码问题

编码问题

采用霍夫曼编码(Huffman)画出字符串各字符编码的过程并求出各字符编码 --多媒体技术与应用

字符串编码中的 Python-3 和 \x Vs \u Vs \U 以及为啥

Python基础(集合用法文件操作字符编码转换函数)