字符串操作
字符串操#字符串操作
name = "aleX leNb"
print(name.capitalize()) #Alex lenb 第一个单词首字母大写,其他都小写
print(name.upper()) #ALEX LENB 全部大写
print(name.lower()) #alex lenb 全部小写
print(name.swapcase()) #ALEx LEnB 大小写反转
print(name.title()) #Alex Lenb每个单词首字母大写,其他都小写
print(name.center(20,'~')) # ~~~~~aleX leNb~~~~~~
print(len(name)) # 9
print(name.startswith("al")) #True
print(name.startswith("e",2)) #True
print(name.startswith("eX",2,4)) #True 遵循顾头不顾尾原则
print(name.endswith("al")) #Flase
print(name.find("e")) #通过元素,找索引值,找不到返回-1
print(name.index("e")) #通过元素,找索引值,找不到,会报错
str=" *alexWusir%deng*den "
str1=str.lstrip() #*alexWusir%deng*den 删除左边空格
str2=str.rstrip() # *alexWusir%deng*den 删除右边空格
str3=str.strip("*") # *alexWusir%deng*den 依次删除左右两边以*开始的*
str4=str.strip(" *")#alexWusir%deng*den 依次删除左右两边以空格或以*为开头的*或空格
str5=str.strip("%") # *alexWusir%deng*den 依次删除左右以%为开头的%
s="*%*alexWusir%deng*den*"
s1=s.strip("*") #%*alexWusir%deng*den
s2=s.strip("%*") #alexWusir%deng*den
s3=s.strip("*%") #alexWusir%deng*den
s4=s.count("*") #4 统计*在字符串中出现的次数
分割 slipt 以某元素分割,被分割后的元素组成一个列表 ,该元素消失
s5=s.split("*") #['', '%', 'alexWusir%deng', 'den', ''] 一分为二,得到列表
s6=s.split("e") #['*%*al', 'xWusir%d', 'ng*d', 'n*']
判断:
str.isalnum() 判断字符串由字母或数字组成
str.isalpha() 字符串只由字母组成
str.isdigt() 字符串只由字母组成
# # 1,有变量name = "aleX leNb" 完成如下操作: # # 1)移除 name 变量对应的值两边的空格,并输出处理结果 # name = "aleX leNb" # print(name.strip()) #aleX leNb # # 2)移除name变量左边的’al’并输出处理结果 # print(name.lstrip("al")) #eX leNb # # 3)移除name变量右面的’Nb’,并输出处理结果 # print(name.rstrip("Nb")) #aleX le # # 4)移除name变量开头的a’与最后的’b’,并输出处理结果 # print(name.strip("ab")) #leX leN # # 5)判断 name 变量是否以 "al" 开头,并输出结果 # print(name.startswith("al")) #True # # 6)判断name变量是否以”Nb”结尾,并输出结果 # print(name.endswith("Nb")) #True # # 7)将 name 变量对应的值中的 所有的“l” 替换为 “p”,并输出结果 # print(name.replace("l","p")) #apeX peNb # # 8)将name变量对应的值中的第一个’l’替换成’p’,并输出结果 # print(name.replace("l","p",1)) #apeX leNb # # 9)将 name 变量对应的值根据 所有的“l” 分割,并输出结果。 # print(name.split("l")) #['a', 'eX ', 'eNb'] # # 10)将name变量对应的值根据第一个’l’分割,并输出结果。 # print(name.split("l",1)) #['a', 'eX leNb'] # # 11)将 name 变量对应的值变大写,并输出结果 # print(name.upper()) #ALEX LENB # # 12)将 name 变量对应的值变小写,并输出结果 # print(name.lower())#alex lenb # # 13)将name变量对应的值首字母’a’大写,并输出结果 # print(name.capitalize()) #Alex lenb # # 14)判断name变量对应的值字母’l’出现几次,并输出结果 # print(name.count("l"))#2 # # 15)如果判断name变量对应的值前四位’l’出现几次,并输出结果 # print(name[:4].count("l")) #1 # # 16)从name变量对应的值中找到’N’对应的索引(如果找不到则报错),并输出结果 # print(name.index("N")) #7 # # 17)从name变量对应的值中找到’N’对应的索引(如果找不到则返回-1)输出结果 # print(name.find("N")) #7 # # 18)从name变量对应的值中找到’X le’对应的索引,并输出结果 # print(name.find('X le')) #3 # # 19)请输出 name 变量对应的值的第 2 个字符? # print(name[1]) #l # # 20)请输出 name 变量对应的值的前 3 个字符? # print(name[:3]) #ale # # 21)请输出 name 变量对应的值的后 2 个字符? # print(name[-2:]) #Nb # # 22)请输出 name 变量对应的值中 “e” 所在索引位置? # print(name.index("e"))#2 # # 获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。 # name2="oldboy" # print(name2.split("y")) #['oldbo', ''] # # # # 2,有字符串s = ‘132a4b5c’ # s = '132a4b5c' # # 1)通过对li列表的切片形成新的字符串s1,s1 = ‘123’ # print(s[:1]+s[2:0:-1]) # # 2)通过对li列表的切片形成新的字符串s2,s2 = ‘a4b’ # print(s[3:6]) # # 3)通过对li列表的切片形成新的字符串s3,s3 = ‘1245’ # print(s[::2]) # # 4)通过对li列表的切片形成字符串s4,s4 = ‘3ab’ # print(s[1:7:2]) # # 5)通过对li列表的切片形成字符串s5,s5 = ‘c’ # print(s[-1]) # # 6)通过对li列表的切片形成字符串s6,s6 = ‘ba3’ # print(s[-3:-8:-2]) # # 3,使用while和for循环分别打印字符串s=’asdfer’中每个元素。 # # n=" asdfer" # # j=0 # # while j<len(n): # # print(n[j]) # # j+=1 # # # for i in n: # # print(i) # # 4,实现一个整数加法计算器: # # 如:content = input(‘请输入内容:’) # 如用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。 # content=input("请输入内容:") # list=content.split("+") # sum=0 # for i in list: # n=int(i.strip()) # sum=sum+n # print(sum) # # 5,计算用户输入的内容中有几个整数。 msg=input("请输入内容:") n=0 # for i in msg: # # print(i) # if i.isdigit(): # n+=1 # print(n) for i in range(1,len(msg)): if msg[i-1].isdigit(): n=n+1 if msg[i].isdigit(): n=n-1 if msg[0].isdigit() and msg[1].isdigit(): if msg[len(msg)-1].isdigit(): print(n+1) else: print(n) else: print(n+1)
格式化输出
方法一:
%s 字符串 %d 数字 %为占位符
# 方法一 name=input("请输入你的名字:") age=int(input("请输入你的年龄:")) job=input("请输入你的工作:") msg = "我叫%s,今年%d,我的工作是%s"%(name,age,job) print(msg)
方法二:format
# # 方法一 name=input("请输入你的名字:") age=int(input("请输入你的年龄:")) job=input("请输入你的工作:") # msg = "我叫%s,今年%d,我的工作是%s"%(name,age,job) # print(msg) # 方法二:format # msg = "我叫%s,今年%s,我的工作是%s" # format方法1: msg1 = "我叫{},今年{},我的工作是{}" print(msg1.format(name,age,job)) # format方法2: msg2="我叫{0},今年{1},我的工作是{2},我在说一下我的名字,我叫{0}".format(name,age,job) print(msg2) # format方法3: msg3="我叫{name},今年{age},我的工作是{job},我在说一下我的名字,我叫{name}" print(msg3.format(age=age,name=name,job=job))
有疑问可以加wx:18179641802,进行探讨