python2.7默认编码是什么_python2.7编码与解码

本文介绍了Python2.7中的编码知识,包括ASCII、GB2312、Unicode和UTF-8的区别。在Python2.7中,系统默认编码为ASCII。文章详细阐述了Unicode和UTF-8的使用,以及字符串在内存、硬盘和传输过程中的编码转换,强调了以Unicode作为中间编码的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

常见的编码

ASCII: 美国人发明的,只编码英文字母和符号,1个字节。

GB2312: 中国人发明的,增加了中文汉字和符号,2个字节。

Unicode: 为了把所有语言都统一到一套编码里,一般是2个字节,生僻字4个字节。

UTF-8: 为了节省英文字符内存空间,UTF-8可变长编码,常用的英文字母被编码成1个字节,汉字通常是3个字节,生僻的字符编码成4-6个字节。

48304ba5e6f9fe08f3fa1abda7d326ab.png

1 >>> S = '中文'

2 >>> print type(S), len(S)

3 4

4

5 >>> unicodeS = u'中文'

6 >>> print type(unicodeS), len(unicodeS)

7 2

8

9 >>> utfS = u'中文'.encode('utf-8')

10 >>> print type(utfS), len(utfS)

11 6

48304ba5e6f9fe08f3fa1abda7d326ab.png

在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码,这样可以节省很多存储空间。

其中,python2和python3系统默认编码分别是ascii和utf-8,以python2.7为例:

48304ba5e6f9fe08f3fa1abda7d326ab.png

1 &g

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值