python入门(7.3)-----字符编码

简介: python入门(7.3)-----字符编码

计算机在设计时采用8位(bit)作为一个字节(byte)


8位一个字节,8bit=1byte


1024byte=1kb(千字节)


1024kb=1mb


1024MB = 1GB


1024GB = 1TB


两个位置可以表示四种状态:00,01,10,11


所以,一个字节(2的8次方)能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。


比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。


ASCII


最早只有127个字符被编码到计算机里,也就是大小写英文字母、数字和一些符号,
这个编码表被称为ASCII编码,比如大写字母A的编码是65,小写字母z的编码是122。


Unicode


Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。
Unicode标准也在不断发展,但最常用的是用两个字节表示一个字符
(如果要用到非常偏僻的字符,就需要4个字节)。


UTF-8


本着节约的精神,又出现了把Unicode编码转化为“可变长编码”的UTF-8编码。
UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,
常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
如果你要传输的文本包含大量英文字符,用UTF-8编码就能节省空间



ord():字符转编码


print(ord('A'))
print(ord('中'))


65
20013


chr():编码转字符


print(chr(66))
print(chr(20013))


B


encode


字符串的编码转换


编码:将字符串转换为二进制数据(bytes)


解码:将bytes类型的数据转换成字符串类型


# 字符串的编码转换
# 编码:将字符串转换为二进制数据(bytes)
# 解码:将bytes类型的数据转换成字符串类型
s = '天涯共此时'
# 编码
print(s.encode(encoding='GBK'))    # 这种编码一个中文占两个字节
print(s.encode(encoding='UTF-8'))  # 在tuf-8这种编码中一个中文占三个字节


b'\xcc\xec\xd1\xc4\xb9\xb2\xb4\xcb\xca\xb1'
b'\xe5\xa4\xa9\xe6\xb6\xaf\xe5\x85\xb1\xe6\xad\xa4\xe6\x97\xb6'


decode


s = '天涯共此时'
# 解码
# byte代表的就是一个二进制数据
byte = s.encode(encoding='GBK')  # 编码
print(byte.decode(encoding='GBK'))  # 解码,用什么编码就要用什么解码
byte = s.encode(encoding='UTF-8')
print(byte.decode(encoding='UTF-8)'))


天涯共此时
天涯共此时


进制转换


bin()


oct()


hex()


转化为16进制


n = 16
print(hex(n))


0x10


参考网页


地址

相关文章
|
28天前
|
Java Python 开发者
Python 学习之路 01基础入门---【Python安装,Python程序基本组成】
线程池详解与异步任务编排使用案例-xian-cheng-chi-xiang-jie-yu-yi-bu-ren-wu-bian-pai-shi-yong-an-li
77 2
Python 学习之路 01基础入门---【Python安装,Python程序基本组成】
|
1月前
|
存储 安全 API
【Python 基础教程 21】Python3 文件操作全面指南:从入门到精通的综合教程
【Python 基础教程 21】Python3 文件操作全面指南:从入门到精通的综合教程
82 0
|
1天前
|
Python
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
|
1天前
|
存储 索引 Python
Python从入门到精通——1.3.1练习编写简单程序
Python从入门到精通——1.3.1练习编写简单程序
|
1天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
1天前
|
数据采集 数据可视化 数据处理
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
|
1天前
|
Java 数据库连接 数据处理
Python从入门到精通:3.1.2多线程与多进程编程
Python从入门到精通:3.1.2多线程与多进程编程
|
1天前
|
存储 网络协议 关系型数据库
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
|
6天前
|
机器学习/深度学习 数据可视化 数据挖掘
《Python 简易速速上手小册》第9章:数据科学和机器学习入门(2024 最新版)
《Python 简易速速上手小册》第9章:数据科学和机器学习入门(2024 最新版)
19 1
|
6天前
|
人工智能 数据挖掘 程序员
《Python 简易速速上手小册》第1章:Python 编程入门(2024 最新版)
《Python 简易速速上手小册》第1章:Python 编程入门(2024 最新版)
35 0

热门文章

最新文章