Python中的bytes
bytes_lst = [
('创建bytes',),
('bytes可哈希',),
('编码与解码',),
('常见编码类型',),
('ord() 与 chr()',),
]
创建bytes
>>>b = bytes('hi', 'utf-8')
>>>type(b)
<class 'bytes'>
bytes可哈希
>>> hash(b'hi')
-4078898686365756139
编码与解码
>>>b = 'hi'.encode('utf-8')
>>>type(b)
<class 'bytes'>
>>>s = b.decode('utf-8')
>>>type(s)
<class 'str'>
常见的编码类型
(PS: Python3.6.2)
ascii
1个英文字符 == 1个字节 == 8位
>>>b = 'a'.encode('ascii')
>>>len(b)
1
utf-8
1个英文字符 == 1个字节 == 8位
1个中文字符 == 3个字节 == 24位
>>>b = 'a'.encode(‘utf-8’)
>>>len(b)
1
>>>b = '湛'.encode('utf-8')
>>>len(b)
3
gbk
1个英文字符 == 1个字节 == 8位
1个中文字符 == 2个字节 == 16位
>>>b = 'a'.encode('gbk')
>>>len(b)
1
>>>b = '湛'.encode('gbk')
>>>len(b)
2
ord() 与 chr()
>>>import sys
>>>sys.getdefaultencoding()
'utf-8'
>>>ord('a')
97
>>>chr(97)
'a'
Python中的bytes的更多相关文章
- python中的bytes和str类型
经过一上午的查找资料.大概理清楚了bytes类型和str类型的区别. bytes类型和str类型在呈现形式有相同之处,如果你print一个bytes类型的变量,会打印一个用b开头,用单引号括起来的序列 ...
- python 中 类型转换 bytes
https://www.cnblogs.com/sesshoumaru/p/5980090.html
- Python中的编码问题(encoding与decode、str与bytes)
1 引言 在文件读写及字符操作时,我们经常会出现下面这几种错误: TypeError: write() argument must be str, not bytes AttributeError: ...
- python中读取json文件报错,TypeError:the Json object must be str, bytes or bytearray,not ‘TextIOWrapper’
利用python中的json读取json文件时,因为错误使用了相应的方法导致报错:TypeError:the Json object must be str, bytes or bytearray,n ...
- 浅析Python中bytes和str区别
本博转载自:Chown-Jane-Y的浅析Python3中的bytes和str类型 Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示, ...
- bytes类型和python中编码的转换方法
一.bytes类型 bytes类型是指一堆字节的集合,在python中以b开头的字符串都是bytes类型.例如: >>> a = "中国" >>> ...
- python中bytes和str
1.python中bytes和str Python3 最重要的新特性大概要算是对文本(text)和二进制数据(binary data)作了更为清晰的区分 (1)Python 3.0使用文本和(二进制) ...
- python的str,unicode对象的encode和decode方法, Python中字符编码的总结和对比bytes和str
python_2.x_unicode_to_str.py a = u"中文字符"; a.encode("GBK"); #打印: '\xd6\xd0\xce\xc ...
- 对于Python中的字节串bytes和字符串以及转义字符的新的认识
事情的起因是之前同学叫我帮他用Python修改一个压缩包的二进制内容用来做fuzz,根据他的要求,把压缩包test.rar以十六进制的方式打开,每次修改其中一个十六进制字符串并保存为一个新的rar用来 ...
随机推荐
- 5 - ByteBuf-替换ByteBuffer-字节操作
a). 容量可按需增长,类似(StringBuilder) b). 读写模式之间不需要flip切换 c). 读和写使用不同的索引-writerIndex/readerIndex d). 支持方法的链式 ...
- 从零开始的全栈工程师——js篇2.9(this详解)
this 一.this是js的一个关键字 指定一个对象然后去替代他 只研究函数内的this 分两种 函数内的this和函数外的this1)函数内的this指向行为发生的主体2)函数外的this都 ...
- MATLAB之数学建模:深圳市生活垃圾处理社会总成本分析
MATLAB之数学建模:深圳市生活垃圾处理社会总成本分析 注:MATLAB版本--2016a,作图分析部分见<MATLAB之折线图.柱状图.饼图以及常用绘图技巧> 一.现状模式下的模型 % ...
- C#高性能Socket服务器IOCP实现
引言我一直在探寻一个高性能的Socket客户端代码.以前,我使用Socket类写了一些基于传统异步编程模型的代码(BeginSend.BeginReceive,等等)也看过很多博客的知识,在linux ...
- shell中的数值计算1/3=0.33
方法1:使用bc工具,把结果printf格式化 res=$(printf "%.5f" `echo "scale=5;1/3"|bc`) echo $res 0 ...
- html5标准
1.<!DOCTYPE html> html5标准网页声明,原先的是一串很长的字符串,现在是这个简洁形式,支持html5标准的主流浏览器都认识这个声明.表示网页采用html5 浅谈:htm ...
- 梦织未来Windows驱动编程 第04课 驱动相关的数据结构
- pta数据结构编程题
编程题6 树的同构 编程题7 List Leaves 编程题8 Tree Traversals Again 编程题10 Root of AVL Tree 编程题12 堆中的路径 编程题13 File ...
- Redis基础对象
Redis 中每个对象都由一个 redisObject 结构表示 typedef struct redisObject { //类型 unsigned type:; //编码 unsigned enc ...
- codeforces 599D Spongebob and Squares
很容易得到n × m的方块数是 然后就是个求和的问题了,枚举两者中小的那个n ≤ m. 然后就是转化成a*m + c = x了.a,m≥0,x ≥ c.最坏是n^3 ≤ x,至于中间会不会爆,测下1e ...