python怎么处理Python字符编码转换?
python有strobject和unicodeobject两种字符串,都可以存放字符的字节编码,但是他们是不同的type,这一点很重要,也是为什么会有encode和decode。
encode和decode在pyhton中的意义可表示为
encode将
unicode----->str
decode
unicode<-------str
几种常用法:
str_string.decode('codec')是把str_string转换为unicode_string,codec是源str_string的编码方式
unicode_string.encode('codec')是把unicode_string转换为str_string,codec是目标str_string的编码方式
str_string.decode('from_codec').encode('to_codec')可实现不同编码的str_string之间的转换
比如:
>>>t='长城'
>>>t
'\xb3\xa4\xb3\xc7'
>>>t.decode('gb2312').encode('utf-8')
'\xe9\x95\xbf\xe5\x9f\x8e'
str_string.encode('codec')是先调用系统的缺省codec去把str_string转换为unicode_string,然后用encode的参数codec去转换为最终的str_string.相当于str_string.decode('sys_codec').encode('codec')。
unicode_string.decode('codec')基本没有意义,unicode在python里只用一种unicode编码,UTF16或者UTF32(编译python时就已经确定),没有编码转换的需要。
注:缺省codec在site-packages下的sitecustomize.py文件中指定,比如
importsys
sys.setdefaultencoding('utf-8')
以上内容为大家介绍了python培训之怎么处理Python字符编码转换?,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

猜你喜欢LIKE
相关推荐HOT
更多>>
python中mat是什么意思?
python中mat是什么意思?本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。python的numpy库提供矩阵运算的功能,因此我们在需要矩阵运...详情>>
2023-11-10 23:22:48
python上下文管理的使用场景
python上下文管理的使用场景本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、上下文管理的使用场景凡是要在代码块前后插入代码的...详情>>
2023-11-10 20:07:44
python常量折叠是什么
python常量折叠是什么1、概念所谓常量折叠,指的是在编译时就查找并计算常量表达式,而不是在运行时再对其进行计算,从而会使运行时更加精简和...详情>>
2023-11-10 19:11:50
pythonTCP与UDP的不同点分析
python中TCP与UDP的不同点分析(推荐操作系统:windows7系统、Python3.9.1、DELLG3电脑。)1、不同点面向连接(确认有创建三方交握,连接已创建才...详情>>
2023-11-10 18:16:05热门推荐
技术干货






