Day1 字符编码及编码函数
ord() 函数
获取字符的整数表示
chr() 函数
把整数编码转换为对应字符
'\十六进制编码\十六进制编码' 可以将字符的整数编码使用十六进制的方式这样写
Python字符串类型为str,在内存中以unicode表示,一个字符对应若干个字节。如果要保存或传输,就需要把str变为以字节为单位的bytes。 Python对bytes类型的数据用带b前缀的单引号或双引号表示, 如 b'ABC'。
虽然a = 'ABC' 和 a1 = b'ABC' 显示得一样,但是bytes的每个字符只占用一个字节。
encode()
以Unicode表示的str 通过encode() 函数可以编码为指定字符编码的bytes , 如:
'ABC'.encode('ascii')
'篳昂'.encode('utf-8')
'篳昂'.encode('GBK')
decode()
反过来,将bytes变为str,就需要用到decode()函数了。
b'ABC'.decode('ascii')
b'\xe7\xaf\xb3\xe6\x98\x82'.decode('utf-8')
如果bytes数据中包含无法解码的字节,会报错。如果只有小部分无效字节,可以传入errors='ignore'忽略错误 , 如:
b'\xe7\xaf\xb3\xe6\x98'.decode('utf-8',errors='ignore')
len()
计算str包含多少个字符
len('ABCDERF')
len('这是一行中文')
计算bytes包含多少个字节
len(b'ABC')
len(b'\xe7\xaf\xb3\xe6\x98\x82')
例子:
>>> st = '这是一行中文'
#len计算str包含多少个字符
>>> len(st)
6
#len计算str转换为bytes后,包含多少个字节。utf-8编码时,一个中文字符占用3个字节。
>>> len(st.encode('utf-8'))
18
Day1 字符编码及编码函数的更多相关文章
- python基础3之文件操作、字符编码解码、函数介绍
内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: #/usr/bin/env ...
- 【测试编码URI的函数】
//测试编码URI的函数 var url="http://www.phpfamily.org/test.php?search= this is a test&sum=1+2" ...
- 【Python】 编码,en/decode函数以及print语句的一些探索
昨天晚上在整理hashlib和hmac模块的时候,又看到了编码这块的内容.越看越觉得之前的理解不对,然后想研究一下自己想出来,但是越陷越深..总之把昨晚+今天一个上午的这些自己想到的东西写下来 ● 几 ...
- php接口开发时,数据解析失败问题,字符转义,编码问题
php接口开发时,数据解析失败问题,字符转义,编码问题 情景: A平台--->向接口请求数据---->接口向B平台请求数据---->B平台返回数据给接口---->接口返回数据给 ...
- python 处理中文遇到的编码问题总结 以及 字符str的编码如何判断
如何处理中午编码的问题 Python的UnicodeDecodeError: 'utf8' codec can't decode byte 0xxx in position 这个错误是因为你代码中的某 ...
- 坑爹的对GBK编码的字符进行url编码
url编码又叫百分号编码 现在的url编码十分混乱,都没有按照新标准来 对汉字都按照不同的编码后再进行url编码 2005年1月发布的RFC 3986,强制所有新的URI必须对未保留字符不加以百分号编 ...
- 哪些字符需要urlencode编码?具体怎么处理?
哪些字符需要urlencode编码?具体怎么处理? JS用escape()/encodeURI()/encodeURIComponent()方法编码,用unescape()/decodeURI()/e ...
- html-----013----实体字符/HTML URL 编码
<!DOCTYPE> 声明 版本 年份 HTML 1991 HTML+ 1993 HTML 2.0 1995 HTML 3.2 1997 HTML 4.01 1999 XHTML 1.0 ...
- javaweb请求编码 url编码 响应编码 乱码问题 post编码 get请求编码 中文乱码问题 GET POST参数乱码问题 url乱码问题 get post请求乱码 字符编码
乱码是一个经常出现的问题 请求中,参数传递的过程中也是经常出现乱码的问题 本文主要整理了请求乱码中的问题以及解决思路 先要理解一个概念前提: 编码就是把图形变成数值码所以说: 图形的字符 -- ...
随机推荐
- Java8 方法引用和构造方法引用
如果不熟悉Java8新特性的小伙伴,初次看到函数式接口写出的代码可能会是一种懵逼的状态,我是谁,我在哪,我可能学了假的Java,(・∀・(・∀・(・∀・*),但是语言都是在进步的,就好比面向对象的语言 ...
- window.frames["id"].location使用
由于最近需要维护一个老项目不得不去学习一些自己都没接触过的项目,老项目中虽然技术已经被淘汰,但是思想还是值得去学习探究的,无论是jsp,freemarker,freemarker这些模板引擎还是Vue ...
- Windows上Jenkins插件下载慢解决方法
替换文件内容 Jenkins/updates/default.json 替换 updates.jenkins-ci.org/download 为 mirrors.tuna.tsinghua.edu.c ...
- Markdown进阶
### 事项清单 - [x] 拖地 - [x] 擦窗 - [ ] 写作业 - [ ] 交资料 效果 事项清单 [x] 拖地 [x] 擦窗 [ ] 写作业 [ ] 交资料 流程图 graph LR A[ ...
- 什么是NTFS文件格式
说到磁盘格式,想必大家对于NTFS格式并不陌生.我们使用的u盘等硬盘设备很多都应用了此格式.NTFS文件格式究竟是什么?它都有哪些特点?今天,小编将利用这篇文章为大家进行介绍. 一.什么是NTFS文件 ...
- 使用ES替代whoosh全文检索
目录 1.docker安装ES 1.拉取docker镜像 2.使用docker安装ES 3.在页面中测试 2.使用ES替代whoosh全文检索 2.1 在Django中修改搜索引擎为ES 2.2 命令 ...
- 朴素的模式匹配算法BF
1 #include <iostream> 2 using namespace std; 3 int BF(char S[], char T[]); 4 int main() 5 { 6 ...
- dubbo协议之响应头编码器&响应对象编码
前2节分析完了请求头和请求对象的编码,这里看一下响应头和响应对象的编码: 和请求头部一样进来先指定序列化器,没有的话用默认的Hessian2,接下来2个字节的操作和请求头编码类似,第三个字节时去req ...
- XOR性质
异或XOR的性质: 1. 交换律 2. 结合律 3. x^x = 0 -> 偶数个异或为0 4. x^0 = x -> 奇数个异或为本身 5. 自反性:a^b^b = a^0 =a
- 12_Sensor简单实例
列出Android手机所支持的Sensor. package com.example.sensorlist; import java.util.List; import android.app.Act ...