字符串操作
unicode数字转换为字符
把 unicode数字转换为字符, 使用函数 chr()
, 比如:
字符转换为unicode数字
反过来,要把 字符转换为对应的unicode数字,使用函数 ord()
该函数参数字符串里面只能有一个字符
字符串编码为 unicode转义数字
用unicode转义数字 写字符串
直接用16进制数字创建 bytes
>>> b'\xb0\xd7\xd4\xc2\xba\xda\xd3\xf0'
b'\xb0\xd7\xd4\xc2\xba\xda\xd3\xf0'
>>> b'\xb0\xd7\xd4\xc2\xba\xda\xd3\xf0'.decode('gbk')
'白月黑羽'
字节串 和 16进制表示字节的字符串
反向操作,把 16进制表示字节的字符串 转化为 字节串就是
将字符串切割为多个字符串
使用正则表达式切割字符串
字符串 对象的 split() 方法只适应于非常简单的字符串分割情形。当你需要更加灵活的切割字符串的时候,就不好用了。
比如,下面字符串中包含的名字, 有的是分号隔开 ,有的是逗号隔开,有的是空格隔开, 而且分割符号周围还有不定数量的空格
这时,最好使用正则表达式里面的 split 方法:
正则表达式 [;,\s]\s*
指定了,分割符为 分号、逗号、空格 里面的任意一种均可,并且 该符号周围可以有不定数量的空格。
使用split函数从字符串中提取内容
比如:从下面格式的字符串中提取出 UID号
可以这样写
使用正则表达式从字符串中提取内容
使用正则表达,可以从多种可能格式的字符串中,提取我们想要的内容 比如,我们想要从下面这几种可能格式的字符串中提取 用户对应的UID号
使用下面代码就可以了
其中 \(UID\W*(\d*)\)
是正则表达式,
content
是被搜索的字符串
findall
方法会获取所有匹配该正则表达式的 子字符串,所以返回的是一个列表
关于Python中的正则表达式用法可以参考Python官方文档
也可以参考我们的教程
将列表中的字符串元素合并为一个字符串
我们常常使用 使用字符串的 join 方法 把 列表中的字符串元素合并为一个字符串
字符串替换时忽略大小写
如果我们要替换字符串的时候, 不管大小写都需要替换,就可以使用 re 模块的sub函数
比如:
import re
text = 'UPPER PYTHON, lower python, Mixed Python'
print(re.sub('python', 'snake', text, flags=re.IGNORECASE))
字符串的格式化
json格式字符串处理
我们如果需要将一个json格式的字符串转换为 Python中的对象进行处理,可以这样
jsonStr = '''{
"account1": 13,
"account2": 12,
"account3": 15}
'''
import json
membersObj = json.loads(jsonStr)
反之,可以这样将一个Python中的对象转换为 一个 json格式的字符串
members = {
'account1' : 13 ,
'account2' : 12 ,
'account3' : 15 ,
}
import json
jsonStr = json.dumps(members)
字符串的倒序
要得到一个字符串的 倒序字符串,只需要使用切片操作 [::-1]
::
表示切片字符串的从头到尾,也就是全部内容, 而 步长 为 -1 表示,颠倒过来取元素
如下,