Python 字符串(二)

字符串的操作

截取字符串

通过切片的方式截取字符串

str1 = "武汉加油! 中国加油!"   #定义一个字符串
str1[5]       #索引第6个位置的元素,第六个位置为空格
' '
str1[6:]   #输出第七个开始到结束的元素,类似列表切片的方法
'中国加油!'
str1[4:8]   #截取第五个到第七个元素
'! 中国'
str1[0:8:2]   #从开始到第七个元素,间隔一个选取元素
'武加!中'
str1[18:25]   #获取不存在的位置元素,会显示空格
''
#例1:截取对话中乙的姓名
str2 = "请问你叫什么名字?"
print("甲说:",str2)
str3 = "我叫哈伦2020!what about you?"
print("乙说:",str3)
name = str3[2:8]
print("甲说:哦,你的名字叫:",name)
甲说: 请问你叫什么名字?
乙说: 我叫哈伦2020!what about you?
甲说:哦,你的名字叫: 哈伦2020
#例2 截取身份证中的出生年月日
str4 = "123456202004091111"   #定义一个字符串表示身份证号
print("出生日期为:",str4[6:10] + "年" + str4[10:12] + "月" + str4[12:14] + "日")  #截取其中的年月日
出生日期为: 2020年04月09日

分割和合并字符串

分割字符串

# 采用str.split(sep,maxsplit) 进行, sep可以是空格,换行等转义,maxsplit表示分割次数
str5 = "野 火 烧 不 尽 ,\n春 风 吹又 生 !"
str5.split()  #默认参数值,注意“吹又”和其它字符的不同

['野', '火', '烧', '不', '尽', ',', '春', '风', '吹又', '生', '!']
#指定参数
str5.split(" ")  #指定一个空格为分隔符
['野', '火', '烧', '不', '尽', ',\n春', '风', '吹又', '生', '!']
str5.split("  ") #指定两个空格为分隔符,原字符串中一个空格的就不被分割
['野 火 烧 不 尽 ,\n春 风 吹又 生 !']
#添加第二个参数,分割次数
str5.split(" ",4)  #分割四次,共五个元素,先分割前面,到分割次数为止,后面不再分割
['野', '火', '烧', '不', '尽 ,\n春 风 吹又 生 !']
str5.split("\n")   #用\n作为分隔符
['野 火 烧 不 尽 ,', '春 风 吹又 生 !']
#例 从一串@好友名单中,分割出每个好友
str6 = "@张三 @李四 @王五 @赵六 @钱七"
str6.split(" ")  #用空格分割
['@张三', '@李四', '@王五', '@赵六', '@钱七']
#如果要去掉前面@,则可通过for语句
list1 = str6.split(" ")
for item in list1 :
    print(item[1:])   #输出每个@对象,从元素1开始,相当于去掉了@
张三
李四
王五
赵六
钱七

合并字符串

#用 string.join(可迭代对象) 语句完成,可迭代对象可以是列表,元组等
list2 = ["张三","李四", "王五", "赵六" ,"钱七"]   #好友列表
str7 = " @".join(list2)   #用空格和@符号合并到列表中
print("您要@的好友为:",str7)        #发现第一个张三前面没有@符号

您要@的好友为: 张三 @李四 @王五 @赵六 @钱七
#张三前面添加@
str7 = " @".join(list2)   #用空格和@符号合并到列表中
at = "@" + str7   #在前面添加@
print("您要@的好友为:",at)  
您要@的好友为: @张三 @李四 @王五 @赵六 @钱七
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

哈伦2019

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

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

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

打赏作者

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

抵扣说明:

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

余额充值