博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day7 字符集转换
阅读量:6675 次
发布时间:2019-06-25

本文共 1200 字,大约阅读时间需要 4 分钟。

python2 默认 ASCLL 不支持中文 转换比较麻烦、需要先解码成unicode然后在编码成想转换的语言
1 s = "特斯拉"2 s_to_unicode = s.decode("utf-8")3 unicode_to_gbk =  s_to_unicode.encode("gbk")4 print(s)5 print("unicode:" ,s_to_unicode)6 print("gbk:",unicode_to_gbk)7 8 #在python2中如果想要将gbk转换成utf-8,9 # 首先需要将gbk解码(decode)成unicode,然后在编码(encode)成utf-8

python3 默认 unicode         encode 会在编码的同时把数据转成byte类型,python2中的encode没有此功能         decode 会在解码的同时吧数据类型byte转换成字符串。         英文,数字会直接打印,但是中文会被用b'i am \xcc\xd8\xcb\xb9\xc0\xad '这种类似格式打印出来         b = byte = 字节类型 = [0-255]         unicode 默认会支持所有的类型,因此在python3中不需要在转码了。
1 s = "i am 特斯拉 "2 # 默认就是unicode,若想转换成其他编码直接编码就可以了3 s_to_gbk = s.encode("gbk") # 编码成gbk4 print(s)5 print(s_to_gbk)6 print(s_to_gbk.decode("gbk")) #gbk解码回去unicode

 

是不是 decode 和 encode 总是分不清   没关系我们还有更舒服的方法 统一都用 encode 编码     字符串 转 bytes 用 str的内置方法encode     bytes 转 字符串 用 bytes的内置方法encode
1 a = "shshh" 2 print(str.encode(a))    # b'shshh' 3 b = str.encode(a) 4 print(b)                # b'shshh' 5 print(bytes.encode(b))    # shshh 6  7  8 a = "shshh" 9 print(bytes(a,encoding="utf-8"))   # b'shshh'10 b = bytes(a,encoding="utf-8")11 print(str(b,encodng="utf-8"))        # shshh

 

 

 

  

转载于:https://www.cnblogs.com/shijieli/p/9681400.html

你可能感兴趣的文章
Eclipse中将tomcat日志输出重定向
查看>>
Ubuntu 14.04安装Nginx1.60
查看>>
aaa
查看>>
详解coredump
查看>>
神奇犁头草,治疗肿毒效如神
查看>>
linux的发行版
查看>>
PHP环境配置中遇到的各种问题解决方法: Cannot load php5apache2_2.dll into server
查看>>
我的友情链接
查看>>
无意看见的几句话
查看>>
常用Linux Shell命令组合-- 运维常用总结
查看>>
XBMC 在UBUNTU 12.04中安装及设置
查看>>
解决mac下无法剪贴、复制、粘贴问题
查看>>
Oracle运维脚本
查看>>
第1部分 Windows Server2008安装和配置
查看>>
cordova环境配置
查看>>
ORA-06553: PLS-553: character set name is not recognized, while starting Content Store
查看>>
Watches OpenCart 主题模板 ABC-0088
查看>>
linux iptables 相关应用
查看>>
Linux基础
查看>>
升级到FTK 4.0.2可免费使用可视化分析模块30天
查看>>