【python】字符串的编码和解码

字符串的编码

将str类型转换成bytes类型,需要使用字符串的encode()方法

str.encode(encoding='utf-8',errors='strict/ignore/replace')

字符串的解码

将bytes类型转换成str类型,需要使用bytes类型的decode()方法

bytes.decode(encoding='utf-8',errors='strict/ignore/replace')

数据的验证

程序对用户输入的数据进行“合法”性验证

方法名描述说明
str.isdigit()所有字符都是阿拉伯数字
str.isnumeric()所有字符都是数字
str.isalpha()所有字符都是字母(包含中文字符)
str.isalnum()所有字符都是数字或字母
str.islower()所有字符都是小写
str.isupper()所有字符都是大写
str.istitle()所有字符都是首字母大写
str.isspace()所有字符都是空白字符

数据的处理

字符串的拼接
字符串的去重

正则表达式

元字符:具有特殊意义的专用字符,例如^和$分别表示匹配的开始和结束

元字符描述说明
.匹配任意字符
\w匹配字母、数字、下划线
\W匹配非字母、数字、下划线
\s匹配任意空白字符
\S匹配任意非空白字符
\d匹配任意十进制数

限定符:用于限定匹配的次数

限定符描述说明
匹配前面的字符0次或1次
+匹配前面的字符1次或多次
*匹配前面的字符0次或多次
{n}匹配前面的字符n次
{n,}匹配前面的字符最少n次
{n,m}匹配前面的字符最小n次,最多m次

re模块

python中的内置模块,用于实现python中正则表达式操作

函数功能描述
re.match(pattern,string,flags=0)用于从字符串的开始位置进行匹配,如果起始位置匹配成功,结果为Match对象,否则结果为None
re.search(pattern,string,flags=0)用于在整个字符串中搜索第一个匹配的值,如果匹配成功,结果为Match对象,否则结果为None
re.findall(pattern,string,flags=0)用于在整个字符串搜索所有符合正则表
达式的值,结果是一个列表类型
re.sub(pattern,repl,string,flags=0)用于实现对字符串中指定子串的替换
re.split(pattern,string,maxsplit,flags=0)分隔字符串

判断车牌归属地

使用列表存储N个车牌号码,通过遍历列表及字符串的切片操作判断车牌的归属地

lst=['京A8888','津B6666','吉A7766']
for item in lst:
	area=item[0:1]
	print(item,'归属地为:',area)

统计字符串中出现指定字符的次数

声明一个字符串,内容为"HelloPython,HelloJava,hellophp",用户从键盘录入要查询的字符(不区分大小写),要求统计出要查找的字符在字符串中出现的次数

s="HelloPython,HelloJava,hellophp"
word=input('统计的字符:')
print('{0}在{1}一共出现了{2}次'.format(word,s,s.upper().count(word)))

格式化输出商品的名称和单价

使用列表存储一些商品数据,使用循环遍历输出商品信息,要求对商品的编号进行格式化为6位,单价保留2位小数,并在前面添加人民币符号输出

lst=[
	['01','电风扇','美的',500],
	['02','洗衣机','TCL',1000],
	['03','微波炉','老板',400],
]
print('编号\t\t名称\t\t\t品牌\t\t单价')
for item in lst:
	for i in item:
		print(i,end='\t\t')
	print()
for item in lst:
	item[0]='0000'+item[0]
	item[3]='${0:.2f}'.format(item[3])
print('编号\t\t名称\t\t\t品牌\t\t单价')
for item in lst:
	for i in item:
		print(i,end='\t\t')
	print()	

提取文本中所有图片的链接地址

从给定的文本中使用正则表达式提取出所有图片的链接地址

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python中的字符串编码解码可以通过encode()和decode()方法来实现。这两个方法都是字符串对象的方法,用于将字符串从一种编码格式转换为另一种编码格式。 encode()方法可以将字符串编码为指定的编码格式,其语法为: ```python string.encode(encoding=编码格式, errors=错误处理) ``` 其中,encoding参数是必须的,用于指定要使用的编码格式,errors参数是可选的,用于指定错误处理方式。如果不指定errors参数,则默认使用strict模式,即如果存在无法编码的字符,则会抛出UnicodeError异常。 例如,将一个字符串编码为UTF-8格式: ```python string = "Hello World" encoded_string = string.encode(encoding="utf-8") print(encoded_string) ``` 输出结果为:b'Hello World'。其中,b表示这是一个字节串对象,而不是字符串对象。 decode()方法可以将字节串解码为指定的编码格式,其语法为: ```python bytes.decode(encoding=编码格式, errors=错误处理) ``` 其中,encoding参数是必须的,用于指定要使用的编码格式,errors参数是可选的,用于指定错误处理方式。如果不指定errors参数,则默认使用strict模式,即如果存在无法解码的字节,则会抛出UnicodeError异常。 例如,将一个UTF-8格式的字节串解码字符串: ```python bytes_string = b'Hello World' decoded_string = bytes_string.decode(encoding="utf-8") print(decoded_string) ``` 输出结果为:Hello World。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叶雨莳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值