python 字符串功能操作

字符串格式化

通过占位符拼接字符串

  • .format (推荐)
  • %s
  • f
message = "学会{0}开发就能创造美好生活".format("python")
message1 = "学会{0}开发就能创造美好生活{0}"
message2 = "学会{}开发就能创造美好生活{}".format("python","python")
print(message)
print(message1.format("python"))
print(message2)
#以位置的占位符从0开始,{}不写默认就是0开始类推,位置可以复用

message = "学会{name}开发就能创造美好生活".format(name="python")
print(message) 
#以名称为占位符,用法类似位置占位符

在这里插入图片描述

字符串首尾匹配

通过匹配首尾字符串,返回布偶值

  • .startswith
  • .endswith
message = "学会python开发就能创造美好生活"
reault = message.startswith("学")
print(reault)
#行首匹配

message1 = "学会python开发就能创造美好生活"
reault1 = message1.endswith("生活")
print(reault1)
#行位匹配

在这里插入图片描述

判断字符串是不是整型

判断字符串是不是整型,返回布偶值

  • .isdecimal (推荐)
  • .isdigit (不准确)
message = "123"
message1 = "1abc"
message2 = "①"
print(message.isdecimal())
print(message1.isdecimal())
#区别,isdigit不是很准确判断
print(message2.isdigit())
print(message2.isdecimal())

在这里插入图片描述

去除字符串2边的空格、制表符、换行符

去除字符串2边的空格、制表符、换行符(默认)但是要可以自定义去除需要的,最终获取到新的值

  • .strip :匹配2边
  • lstrip :匹配左边
  • rstrip :匹配右边
message = "     学会python "
#添加了制表符(tab)和空格
message1 = "开发就能创造美好生活"
print(message)
print(message.strip())
print(message1.rstrip("生活"))

在这里插入图片描述

字符串转换大小写

转换字符串的大小写,得到新的值

  • .upper :大写
  • .lower :小写
message = "abc123"
message1 = "ABC123"
print(message.upper())
print(message1.lower())

在这里插入图片描述

字符串内容替换

替换字符串内容,生成新的值

  • .replace
message = "学号开发就能创造美好生活贱"
print(message.replace("学号","学好"))
#正常替换字符串
print(message.replace("贱",""))
#过滤不要的值,替换成空字符串

在这里插入图片描述

字符串切割

对字符串切割,得到一个列表

  • .split :从左开始切割
  • .rsplit :从右开始切割
message = "/dev/vda1           100G  3.1G   97G   4% /"
#添加了空格,制表符
message1 = "/dev/ vda1| 100G|3.1G|97G|4%|/"
print(message.split())
#默认切割符不写就是包含空格,制表符
print(message1.split("|"))
#指定制表符,空格和制表符都会被体现出来
print(message1.split("|",2))
#可以指定切割第几个,后面的就内容不切割

在这里插入图片描述

字符串拼接

通过指定拼接符拼接字符串,得到一个新值

  • 拼接符.join :跟切割相反
  • + :最常见的拼接
  • 字符串格式化
message = ["美好","生活"]
print("".join(message))
print("-".join(message))
#只能传递一个参数

在这里插入图片描述

字符串编码转换

通过把字符串转换成utf-8字节类型

unicode :默认中文占用2个字节
缺点:存在浪费大量bit位,增加了存储的成本
utf-8 :默认中文占用3个字节
针对 unicode进行了优化,减少不必要的bit位

  • .encode :字符串转换成字节类型
  • .decode :字节类型转成字符串
message = "美好"
v1 = message.encode("gbk")
v2 = message.encode("utf-8")
print(v2)
#utf-8的编码
print(v2.decode("gbk"))
#utf-8转换成gbk乱码
print(v2.decode("utf-8"))

在这里插入图片描述
字符串居中、靠左、靠右

对字符串进行居中、靠左、靠右,并进行填充其他的部分

  • .center(位数,填充符号):居中
  • .ljust(位数,填充符号):居左
  • .ljust(位数,填充符号):居右
message = "摘要"
print(message.center(20,"-"))
print(message.ljust(20,"-"))
print(message.rjust(20,"-"))

在这里插入图片描述
帮助填充0

常见是处理二进制数据填充0

  • .zfill(位数)
bit = "110"
print(bit.zfill(8))
#填充成一个字节的8位bit

在这里插入图片描述
字符串本身操作

v1 = "python"
v2 = "开发"
# +
print( v1+v2 )
#字符串拼接

# *
print(v2*3)
#打印倍数

# len
print(len(v1))
#字符串长度,跟编码无关

# 根据索引获取字符串
print(v1[0])
print(v2[1])
print(v1[-1])  #从右到左,第一个索引1
#获取字符串的索引,从0开始,不支持修改原字符串,具有原子性

#根据范围索引和步长获取字符串
print(v1[0:2:2])
#0-2索引,步长为2的字符串
print(v1[0::2])
#0-最后索引,步长为2的字符串
print(v1[-1:1:-1])
#-1代表前面的索引范围顺序相反,1不取,取值也相反
print(v2[::-1])
#取反
python开发
开发开发开发
6
p
发
n
p
pto
noht
发开
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值