python调换字符串顺序_04python—15种字符串操作
《python⼩⽩⼊门系列教程》 专栏 · 第04篇
字符串是 字符的序列 。字符串基本上就是⼀组单词。我⼏乎可以保证你在每个Python程序中都要⽤到字符串,所以请特别留⼼下⾯这部分的内容。下⾯告诉你如何在Python中使⽤字符串。
1. 字符串定义
使⽤单引号" 你可以⽤单引号指⽰字符串,就如同"这是⼀句话"这样。
str = "这是⼀句话"
print( str )python格式化输出format
使⽤双引号 " 在双引号中的字符串与单引号中的字符串的使⽤完全相同,例如"What"s your name?"。
str = "What"s your name?"
print( str )
使⽤三引号("""或""") 利⽤三引号,你可以指⽰⼀个多⾏的字符串。你可以在三引号中⾃由的使⽤单引号和双引号。
str ="""
这是⼀个多⾏⽂本. 这是第⼀⾏.这是第⼆⾏.
"你的名字是," 我问到。他会答"我的名字是⽊⽊"
"""
print(str)
转义符假设你想要在⼀个字符串中包含⼀个单引号("),那么你该怎么指⽰这个字符串?
例如,这个字符串是What"s your name?。
你肯定不会⽤"What"s your name?"来指⽰它,因为Python会弄不明⽩这个字符串从何处开始,何处结束。所以,你需要指明单引号⽽不是字符串的结尾。可以通过 转义符 来完成这个任务。
你⽤"来指⽰单引号——注意这个反斜杠。现在你可以把字符串表⽰为"What"s your name?"。
另⼀个表⽰这个特别的字符串的⽅法是"What"s your name?",即⽤双引号
str1 = "What"s your name?"
str2 = "What"s your name?"
print(str1)
print(str2)
2. 索引(即下标)
s = "ABCDEFGHIJKLMN"
s1 = s[0]
print("s[0] = " + s1) #s[0] = A
print("s[3] = "+ s[3]) #s[3] = D
print("倒数第三个数为:" + s[-3]) #倒数第三个数为:L print("最后⼀个数为:" + s[-1]) #最后⼀个数为:N
3. 切⽚:顾头不顾尾(截取⼀部分字符串)
s = "ABCDEFGHIJKLMN"
s2 = s[0:3]
print("s[0:3] = " + s2)
#s[0:3] = ABC
print("整个字符串如下:" + s[:])
#整个字符串如下:ABCDEFGHIJKLMN
print("整个字符串如下:" + s[0:])
#整个字符串如下:ABCDEFGHIJKLMN
print("前两个字符:" + s[:2])
#前两个字符:AB
4. 跳取 s[⾸:尾:步长]
s3 = "ABCDEFGHIJKLMN"
print(s3[0:6:2]) #ACE
print(s3[::2]) #ACEGIKM
print(s3[4:0:-1]) #倒着取:EDCB
print(s3[3::-1]) #DCBA
print(s3[-1::-1]) #NMLKJIHGFEDCBA
5. 字符串的操作
1)⾸字母⼤写
s = "alexWUsir"
s4_1 = s.capitalize() #⾸字母⼤写
print(s4_1) #Alexwusir
2)全部⼤写
s = "alexWUsir"
s4_2 = s.upper() #全部⼤写
print(s4_2) #ALEXWUSIR
3)全部⼩写
s = "alexWUsir"
s4_3 = s.lower() #全部⼩写
print(s4_3) #alexwusir
4)⼤⼩写互换
s = "alexWUsir"
s4_4 = s.swapcase() #⼤⼩写互换
print(s4_4) #ALEXwuSIR
6. 居中(⽤空⽩/其他字符填充)
#center(self, width, fillchar=None)s = "alexWUsir"
s5_1 = s.center(20,"%") #⽤%填充
s5_2 = s.center(15,"*") #⽤*填充
s5_3 = s.center(20) #空⽩填充
print(s5_1) #%%%%%alexWUsir%%%%%%
print(s5_2)
#***alexWUsir***
print(s5_3) # alexWUsir
7. 每个⽤特殊字符或数字隔开的单词⾸字母⼤写
s = "xc——gx*zs_shy+hihn9bbklv yiu"
s7 = s.title()
print(s7)
#Xc——Gx*Zs_Shy+Hihn9Bbklv Yiu
应⽤实例:
print("------------验证码的检验问题(先转化为全部⼤写,再核对) --------------") s_str = "aBcD1s"
you_input = input("请输⼊验证码,不区分⼤⼩写")
while s_str.upper()!= you_input.upper():
print("验证码错误")
you_input = input("请重新输⼊")
print("输⼊成功")
运⾏结果:
8. 查
#s.find通过元素索引,到返回索引,不到返回-1
#s.index通过元素索引,到返回索引,不到返回error
s = "alexWUsir"
s8_11 = s.find("W")
s8_12 = s.index("W")
s8_21 = s.find("WU")
s8_22 = s.index("WU")
s8_31 = s.find("A")
s8_32 = s.index("A")
print(s8_11,type(s8_12))
#4
print(s8_21 ,type(s8_22))
#4
print(s8_31 ,type(s8_32))
#报错:ValueError: substring not found----未到⼦字符串应⽤实例:
print("----------------检验⾮法(敏感)字符-------------------")
s = "gcu⽊⽊gckhb"
if "⽊⽊" in s:
print("您的评论有敏感字符")
9. 删除字符串前后的空格/字符
s = " alexW%Usir %2% "
s9_1 = s.strip()
#删除字符串前后的空格
print(s9_1)
#alexW%Usir %2%
ss = "% alexW%Usir %2% %"
s9_2 = ss.strip("%")
#删除字符串前后的%
print(s9_2)
# alexW%Usir %2%
应⽤举例:
username = input("请输⼊名字:").strip()
if username == "⾟⾠":
print("你好呀 主⼈")
运⾏结果:
10. 计算字符串中某字符/字符串的个数
s = "alexaa wusirl"
s10 = s.count("a")
print("此字符串中有" + s10 + "个a")
#报错:TypeError: must be str, not int
print("此字符串中有" + str(s10) + "个a")
#此字符串中有3个a
11. 分割:⽤空格(默认)/固定字符分割字符串(相当于str--->list) s = "alex wusir taibai"
s1 = "ale:x wus:ir :taibai"

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。