随笔 - 30  文章 - 0  评论 - 0  阅读 - 6257

python-字符集和编码

一、知识点

【1】基本概念

  1. 位:计算机中的最小编码,二进制中的一位,0/1
  2. 字节:8位组成1个字节
  3. 字符:我们看见的文字和符号(汉字、标点、英文、表情)
  4. 字符集:字符的集合,一套文字符号集合的描述
  5. 编码:将字符转换成0/1
  6. 解码:将0/1转换成字符

【2】字符编码发展:ASCII、GB2312、GBK(兼容汉字)、GB18030(兼容少数名族语言)、ucs(必须2位开始,不足2位用0扩充,会造成空间浪费)、unicode、UTF8(可以用1,2,3个字节表示1个字符,兼容性高)

【3】python3默认编码是UTF8,支持直接输出汉字等

二、字符串和bytes类型

【1】ord和chr函数

【2】数据类型:bytes,要在字符串前面加上b

【3】字符串和bytes类型的相互编码和解码

【4】bytes类型用来网络传输,字符串不能网络传输

三、具体代码

# -*- coding:utf-8 -*-
# __author__:pansy
# 2022/5/8

# 一、两个函数:
# 1、ord函数:单个字符的整数表示
# 2、chr函数:整数的字符表示

print(ord('潘'))   # 28504
print(chr(28504))  # 潘

# 二、数据类型
a = 'abc'   # 字符串类型
print(type(a))
b = b'abc'  # bytes类型,在字符串前面加上b
print(type(b))

# 三、字符串和bytes类型编码解码(注:编码和解码的字符编码类型需要一致)
c = '啊啊啊,pan'
d = c.encode('utf8') # 字符串编码,b'\xe5\x95\x8a\xe5\x95\x8a\xe5\x95\x8a\xef\xbc\x8cpan'
print(d)
e = b'\xe5\x95\x8a\xe5\x95\x8a\xe5\x95\x8a\xef\xbc\x8cpan'
print(e.decode('utf8')) # 解码

# 四、bytes类型作用:网络传输;不能直接用字符串传输,要用bytes传输

 

posted on   墙角一枝花  阅读(273)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示