python3 编码与解码

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
32
33
34
35
import binascii
import sys
 
"""
python3:
python3默认编码为unicode,由str类型进行表示。二进制数据使用byte类型表示
字符串通过编码转换成字节码,字节码通过解码成为字符串
encode:str –> bytes
decode:bytes – > str
 
转:https://www.jianshu.com/p/c6a3a0167ff9
"""
 
print("print1:", sys.getdefaultencoding())
 
name = "中国"
name = name.encode("utf-8")
print(name)
print("print2:", type(name), name)
name = name.decode("utf-8")
name = name.encode("gbk")
print("print4:", type(name), name)
 
 
a = 'worker'.encode()
#先把worker转换成二进制数据然后在用十六进制表示
b = binascii.b2a_hex(a) # w对应ascII是0x77;o对应ascII是0x6f...以此类摧
print(b)
#与b2a_hex相反
print(binascii.a2b_hex(b))
#这个功能和b2a_hex()一样
c = binascii.hexlify(a)
print(c)
#这个功能和a2b_hex()一样
print(binascii.unhexlify(c))

  

编码与解码:相当于计算机存储数据【二进制 十六进制】与实际屏幕显示的相互转译;

通用编码: uft-8  utf-16

中文:gbk gb2132

 

注:

** 编码与解码与系统无关,是通用的规则;

** 数据传输过程中不同语言和框架可以对数据进行拆解与整合,类似加密,而非编码方式导致数据不可解读

 

posted @   小毛编  阅读(365)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示