Python字符串常用操作
Posted mb5c7bb57d7f7e8
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python字符串常用操作相关的知识,希望对你有一定的参考价值。
字符串索引及切片
#字符串索引是从做到右,从0开始,从右往左是从 -1开始
msg = "我在学习Python"
print (msg[2]) #输出索引为2的字符
print (msg[0:5]) #输出索引从0到5的字符,不含5
print (msg[0:5:2]) #输出索引从0到5的字符,且步长为2
print (msg[1:-1]) #输出索引从1到最后一个字符的内容,不包括最后一个字符
print (msg[-1:-5:-1]) #输出从最后一个到倒数第四个字符,倒数要求一定要加步长
输出结果如下:
upper 、lower英文字母大小写转换
demo = "AAAA开心的一天BBBB"
print (demo.upper()) # 英文字母都转换为大写
print (demo.lower()) # 英文字母都转换为小写
输出结果如下:
Split 以指定字符分隔
str.split(sep) 能够根据sep分隔字符串str。str不是必须的,默认为空格分隔,sep可以是单个字符,也可以是一个字符串,分隔后的内容以列表类型返回。
str = \'Python is an excellent language\'
print (str.split())
print (str.split(\'a\'))
print (str.split(\'an\'))
输出结果如下:
count 判断某个字符共出现了几次
str = \'Python is an excellent language\'
print (str.count(\'a\'))
print (str.count(\'an\'))
print (str.count(\' \'))
输出结果如下:
replace替换字符串
th = "今天是2021.8.25号,今天我要学Python"
print (th.replace(\'今天\',\'明天\'))
print (th.replace(\'今天\',\'明天\',1)) #替换1次
print (th.replace(\'2021.\',\'\')) #也可以使用replace()方法去掉字符串中的特定字符或字符串
输出结果如下:
center返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
语法:str.center(width[, fillchar])
demo = \'Hello,World\'
print (demo.center(13,\'^\'))
print (demo.center(20,\'*\'))
输出结果如下:
strip去除指定字符
语法:str.strip([chars]);
demo = " ==Python=="
print (demo.strip(\' \'))
print (demo.strip(\'=\')) #注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
demo1 = \'left.txt\'
print (demo1.strip(\'left\'))
print (demo1.strip(\'deft\'))#只要首尾两端的字符在 chars 之内,就会被删除,直到遇到第一个不在 chars 内的字符
输出结果如下:
join 拼接字符
Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
语法:str.join(sequence)
a = " "
print(a.join(\'Python\')) #以空格拼接字符串
b = "|"
print (b.join(\'123456\'))
c = "|"
print (c.join([\'1\',\'2\',\'3\']))
输出结果如下:
format格式化输出
#format 函数可以接受不限个参数,位置可以不按顺序。
print (\'{} {}\'.format(\'Hello\',"World")) #不设置指定位置,按默认顺序
print (\'{1} {0}\'.format(\'Hello\',"World")) #设置指定位置
print (\'{1} {0} {0}\'.format(\'Hello\',\'World\')) #设定指定位置
# 也可以设置参数
print("我叫{name},今年{age}".format(name = \'小明\', age = \'八岁半\'))
#通过字典设置参数
a = {"name":\'小明\',\'age\':\'8岁\'}
print ("我叫{name},今年{age}".format(**a))
#通过列表索引设置参数
my_list = ["小明","8岁"]
print ("我叫{0[0]},今年{0[1]}".format(my_list))# "0" 是必须的
输出结果如下:
新特性— f 格式化输出
优点:
结构更加简化
可以结合表达式,函数进行使用
效率提升很多
# 可以这样写,更直观
name = \'张三\'
age = 18
print(f\'我叫{name},今年{age}岁。\')
# 也可以使用表达式,调用字典、列表等元素
my_info = {\'name\': \'张三\', \'age\': 18}
print(f\'我叫{my_info.get("name")},今年{my_info.get("age")}岁。\')
is 判断字符串由什么组成
demo = \'test123\'
print (demo.isalpha()) # 字符串是否由纯字母组成
print (demo.isalnum()) # 字符串是否由字符串或数字组成
print (demo.isdecimal()) # 字符串是否由纯十进制数组成
输出结果如下:
# isdecimal使用示例:
s1 = input(\'请输入金额:\')
if s1.isdecimal():
print(\'你输入的金额为:\', s1, \'元!\')
else:
print(\'请输入正确金额!\')
startswith、endswith 判断是否以某个字符开始或结尾
demo = \'woshihaonanhai真棒tt555\'
print (demo.startswith(\'w\'))# startswith :判断是否以什么字符开头
print (demo.startswith(\'wo\'))
print (demo.startswith(\'wO\'))
print (demo.startswith(\'h\',3)) #判断索引为3的字符是不是h
# endswith:判断是否以某个字符结尾
print (demo.endswith(\'5\'))
-------------本文结束感谢您的阅读-------------
以上是关于Python字符串常用操作的主要内容,如果未能解决你的问题,请参考以下文章