一.字符串函數
1.首字母大小寫
- capitalize()
- title()
name = "xinfangshuo" print (name.capitalize()) print (name.title())
2.upper()方法將字符串中的小寫字母轉為大寫字母
name = "xinfangshuo" #字母全部大寫 print (name.upper()) name = "ZHANGsan" print (name.upper())
3.count()統計字符串里某個字符出現的次數
name = "nosnfienvdknvdicn" print (name.count("n")) name = "ndsvknoMCLJXCNcwkn" print (name.count("n",0,8))
4.join()把集合中的字符按自定義的分隔符連接在一起
first_name = "zhang" second_name = "san" name = "".join([first_name,second_name]) print(name) ---> zhangsan
name = 'Jay' new_name = '.'.join(name) print (new_name) print (new_name[0])
a = "I" b = "am" c = "Chinese" d = " ".join([a,b,c]) print(d) ---> I am Chinese
5.split()把字符串通過指定標識符分割為序列
name = 'J-a-y' #去除"-" new_name = name.split('-') print (new_name) #無條件連接 result = ''.join(new_name) print (result)
strs = "XFS" New_strs = "/".join(strs) a = New_strs.split("/") a.remove("F") b = "".join(a) print (b)
6.splitlines()按照行('\r', '\r\n', \n')分隔
- 返回一個包含各行作為元素的列表,如果參數 keepends 為 False,不包含換行符,如果為 True,則保留換行符。
name = "dasl\rdnasl\nsdnaadsaasdas\r\ndaldmas" print (name.splitlines()) print (name.splitlines(True))
7.strip()方法用於移除字符串頭尾指定的字符(默認為空格)或字符序列,例如:/n, /r, /t, ' '。
- 注意:該方法只能刪除開頭或是結尾的字符,不能刪除中間部分的字符。
name = " zhangsan " print(name) print(name.strip()) ---> zhangsan ---> zhangsan
- B.strip("ad") --> 刪除 B 字符串中開頭、結尾處,位於 ad 刪除序列的字符
strs = 'aaadnnjlkdamkaad' New_strs = strs.strip('ad') print (New_strs) strs = ' aaadnnjlkdamkaad ' New_strs = strs.strip(' ') #刪除空格 print (New_strs)
8.lstrip()
- B.lstrip("ad") --> 刪除 B 字符串中開頭處,位於 ad 刪除序列的字符
strs = 'aaadnnjlkdamkaad' New_strs = strs.lstrip('ad') print (New_strs)
9.rstrip()
- B.rstrip("ad") --> 刪除 B 字符串中結尾處,位於 ad 刪除序列的字符
strs = 'aaadnnjlkdamkaad' New_strs = strs.rstrip('ad') print (New_strs)
10.startswith()函數判斷文本是否以某個字符開始
phone = raw_input("請輸入手機號:") if phone.startswith("1"): print ("Phone is ok!") else: print ("Phone must startswith string '1'") name = ['張三','李四','王五','趙六','張強','李白','李杜'] count1 = 0 count2 = 0 count3 = 0 for i in name: if i.startswith('張'): count1 += 1 elif i.startswith('李'): count2 += 1 elif i.startswith('王'): count3 += 1 print ('全班姓張的有%d 人,全班姓李的有%d 人,全班姓王的有%d 人'%(count1,count2,count3))
11.endswith()函數判斷文本是否以某個字符結束
#coding=utf-8 text1 = raw_input('請上傳您的文檔:') if text1.endswith('.doc'): print ('上傳成功') else: print ('上傳失敗')
12.index()方法檢測字符串中是否包含子字符串 str(返回的是該字符串的索引值)
strs = "xinfangshuo" #找到了,返回字符串的開始索引號 print (strs.index("fang")) #未找到時報錯:ValueError: substring not found print (strs.index("na"))
13.replace()字符串替換
- replace(old_str,new_old)
#coding=utf-8 strs = "我愛python" print (strs.replace("python","java")) name = "XFS" print (name.replace("F",""))
14.find()從左邊開始查詢字符串
- (1)find("str",start,end)
- "str":待查的字符
- start:表示開始查詢的索引值
- end:表示查詢結束的索引值
- (2)當查詢到結果后,返回字符串的索引值
strs = "I love python" print (strs.find("love",0,-1))
- (3)當查詢不到時,返回的結果為-1
strs = "I love python" print (strs.find("java",0,-1))
15.center(width,fillchar)居中
- 返回一個原字符串居中,並使用空格填充至長度 width 的新字符串
- fillchar 默認填充字符為空格。
strs = "python" print (strs.center(100,"-")) #fillchar 默認填充字符為空格 print (strs.center(100))
16.ljust(width,fillchar)方法返回一個原字符串左對齊
- 並使用空格填充至指定長度的新字符串。
- 如果指定的長度小於原字符串的長度則返回原字符串
strs = "python" print (strs.ljust(100,"-")) #fillchar 默認填充字符為空格 print (strs.ljust(100)) #指定的長度小於原字符串的長度則返回原字符串 print (strs.ljust(3,"-"))
17.rjust(width,fillchar) 返回一個原字符串右對齊
- 並使用空格填充至長度 width 的新字符串。
- 如果指定的長度小於字符串的長度則返回原字符串
strs = "python" print (strs.rjust(100,"-")) #fillchar 默認填充字符為空格 print (strs.rjust(100)) #指定的長度小於原字符串的長度則返回原字符串 print (strs.rjust(3,"-"))
18.zfill() 方法返回指定長度的字符串,原字符串右對齊,前面填充 0
strs = "python" print (strs.zfill(100))
19.isalnum()方法檢測字符串是否由字母/數字組成且不能為空(返回的是 True、False)
pwd = raw_input("Please input your password:") if pwd.isalnum(): print ("Password is right!") else: print ("Password is error!")
20.isalpha()方法檢測字符串是否只由字母組成(返回的是 True、False)
pwd = raw_input("Please input your password:") if pwd.isalpha(): print ("Password is right!") else: print ("Password is error!")
21.isdigit()方法檢測字符串是否只由數字組成(返回的是 True、False)
phone = raw_input("Please input your phone number:") if phone.isdigit(): print ("Phone number is right!") else: print ("Phone number is error!")
22.islower()方法檢測字符串是否由小寫字母組成(返回的是 True、False)
pwd = raw_input("Please input your password:") if pwd.islower(): print ("Password is right!") else: print ("Password is error!")
23.isupper() 方法檢測字符串中所有的字母是否都為大寫(返回的是 True、False)
pwd = raw_input("Please input your password:") if pwd.isupper(): print ("Password is right!") else: print ("Password is error!")
24.istitle() 方法檢測字符串中所有的單詞拼寫首字母是否為大寫,且其他字母為小寫(返回的是 True、False)
pwd = raw_input("Please input your password:") if pwd.title(): print ("Password is right!") else: print ("Password is error!")
25.isspace() 方法檢測字符串是否只由空格組成(返回的是 True、False)
pwd = raw_input("Please input your password:") if pwd.isspace(): print ("Password is right!") else: print ("Password is error!")
