python 杂记(二)
字符串
- 字节字符串
- 借助chr()和ord进行转化
- 借助struct 模块进行复杂的转化
- Unicode字符串
- 转化为字节编码
- 转化为UTF-8编码
字符串有两种格式,一个是字节字符串,一个是Unicode字符串。
字节字符串
在字节字符串(在Python中由bytes对象表示)中,每个字符仅代表一个字节,因此很容易与文件或外界的其他接口进行交互。
标准字符串仅用一对单引号标识为文字(如example),而字节字符串要求在第一个单引号前包含b。
标准字符串
print('你好')
字节字符串·
print(b'12')
>b'12'
字节字符串中的字符只能是ACSII表中的字符。
输出时会将b带上。
借助chr()和ord进行转化
,ord()函数,将返回与之等效的数字
,只能是单个字符
>>>ord(b'A')
>65]
#也可以迭代字节序列
>>>list(b'Example')
>[69,120,97,109,112,108,101]
,chr()会根据转入的整数值返回单个字符
,返回的只是常规的字符串。
>>>chr(65)
>A
#迭代转化
>>>[chr(o) for o in [69,120,97,109,112,108,101]]
['E','x','a','m','p','l','e']
借助struct 模块进行复杂的转化
import struct
>>>struct.pack(b'B',65)
b'A'
B指定了一个无符号的数值,因此不能是负数。范围0~255
import struct
>>>struct.pack(b'b',65)
b'A'
b指定一个有符号的字节,范围-128~127。
双字节
import struct
>>>struct.pack(b'Hh',65,65)
b'A\x00A\x00'
指定字节顺序
大端序:b'>H'
小端序:b'<H'
默认小端序
>>>print(struct.pack(b'>H',65))
>b'\x00A'
一次性打包和解包多个值
import struct
first_name = 'MARY'
last_name = 'Alsh'
age = 28data = struct.pack(b'10s10sB',bytes(first_name,'utf8'),bytes(last_name,'utf8'),age)
print(data)
,s格式化代码结合数字前缀,可以表示读取或写入的字符串大小
Unicode字符串
转化为字节编码
编码过程本身是使用字符串的encode()方法进行管理的。只需要传入编码的
名称, encode()
方法就会返回一个字节字符串,以表示给定编码中的文本。(当然这些字符都应该是ASCII表中的。
str ='This is a example'.encode()
#str ='This is a example'.encode('ascii')
#str ='This is a example'.encode('ASCII')
print(str)
>b'This is a example'
转化为UTF-8编码
python 杂记(二)相关推荐
- 看例子,学 Python(二)
看例子,学 Python(二) 看例子,学 Python(一) 看例子,学 Python(三) 模块 文件 mymath.py 定义了函数 fib 和 fac,mymath.py 就是一个模块. A ...
- python生成二维码、动态二维码 和 而二维码解析
python生成二维码.动态二维码 和 而二维码解析(8-20190129) 文章目录: 一.二维码介绍 二. 就是为了好玩所以想搞一下二维码,"好玩",少年醒醒,不要骗自己啦,起 ...
- 初学Python(二)——数组
初学Python(二)--数组 初学Python,主要整理一些学习到的知识点,这次是数组. # -*- coding:utf-8 -*- list = [2.0,3.0,4.0] #计算list长度 ...
- python可以使用二维元组吗_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)...
怎么去读取一个没有表头的二维csv文件(如下图所示)? 并以元组的形式表现数据: ((1.0, 0.0, 3.0, 180.0), (2.0, 0.0, 2.0, 180.0), (3.0, 0.0, ...
- 互联网 4 大发明之二维码,你如何使用 Python 生成二维码?
阅读文本大概需要 8 分钟. 新时代,人们有人信新的追求,自然而然会有新发明的诞生.去年,在"一带一路"国际合作高峰论坛举行期间, 20 国青年投票选出中国的"新四大发明 ...
- [Python图像处理] 二十八.OpenCV快速实现人脸检测及视频中的人脸
该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门.OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子.图像增强技术.图像分割等,后期结合深度学习研究图像识别 ...
- [Python图像处理] 二十七.OpenGL入门及绘制基本图形(一)
八年前,我正是通过学习OpenGL和C++,通过做"采蘑菇的小矮人"游戏,慢慢走上并爱上了编程.回过头来,我希望通过Python和OpenGL分享一些有趣的知识,提升您的编程兴趣, ...
- 据说这是熟练掌握python的爷们_dongbei 是一门基于 Python 3 二次开发的东北方言编程语言...
dongbei - 东北方言编程语言 学编程,就整东北浪! 体格咋地 扫码关注原作者微信公众号"老万故事会": 引言 dongbei是啥?它是一门以东北方言词汇为基本关键字的以人为 ...
- Python实现二叉搜索树的删除功能
Python实现二叉搜索树的删除功能 二叉搜索树(二叉查找树,Binary Search Tree)又称为排序二叉树.有序二叉树. 二叉搜索树的实现可以参考:https://blog.csdn.net ...
- Python实现二叉搜索树
Python实现二叉搜索树 二叉搜索树(二叉查找树,Binary Search Tree)是一种特殊的二叉树,又称为排序二叉树.有序二叉树. 二叉搜索树具有如下特性: 1. 如果二叉树的左子树不为空, ...
最新文章
- 恢复Opera11.50地址栏的下拉列表按钮
- educoder python入门之基础语法-用python实现豆瓣短评通用爬虫(登录、爬取、可视化分析)...
- Java字节码方法表与属性表深度剖析
- UNIX网络编程笔记(6):I/O复用之select函数
- MySQL 指定过滤条件
- 人工智能的前景:更高智慧的体的诞生
- 关于MongoDB数据库的可连接性稳定性 - 抛转篇
- 小小数据统计(柱状图、折线图、扇形图)
- 卸载VS2008后重新安装VS2005的苦难历程
- 数据可视化大屏有哪些优势
- VSC为_LCC 和 VSC (MMC) 的底层特性区别
- oppo 手机计算机历史记录,粘贴板历史记录
- 杨韬的Markdown自定义CSS样式
- web 视频演示,MP4小视频免费下载
- 报错:跨域问题解决 No ‘Access-Control-Allow-Origin‘ header is present on the requested resource.
- Windows下的定时任务设置
- 使用canvas制作背景水印
- 十进制转化为二进制代码及流程图
- mysql:百度地图经纬度,按照经纬度坐标排序查询
- 二阶振荡环节的谐振频率_典型环节的频率特性二阶振荡环节-西安电子科技大学.PPT...
热门文章
- pythonslice_shift_Pandas 解决dataframe的一列进行向下顺移问题
- NFS服务器是什么?(Network File System 网络文件系统)(远程主机间 mount 挂载目录)(ubuntu:nfs-kernel-server)
- python 如何获取数组(列表)长度? len()
- Python学习笔记(基础知识点二)开更了~
- Java虚拟机JVM常用的几种回收算法和垃圾回收器
- mysql_rollback_MySQL的rollback--事务回滚
- Java线程知识整理汇总
- exhaustion java_Java Exceptions
- mysql中shift h_MySQL复制技术对比与容器化探究
- 英文翻译_科研论文英文翻译时需注意的事项及一些对策