字符串的常用方法。
·1,capitalize 首字母大寫
例子:
#字符串的操作 s = 'dmailT' s1 = s.capitalize() # 首字母大寫 print(s1)
運行結果:
DmailT
2,upper全大寫,lower全小寫,代碼如下,以省略上面的代碼。
#全大寫,全小寫 s2 = s.upper() s21 = s.lower() print(s2,s21)
運行結果:
DMAILT dmailt
該方法的需求場景例子:不區分大小寫的驗證碼識別,代碼如下:
#驗證碼識別,不區分大小寫 s_str = 'AkJM' print('請輸入驗證碼:%s'%s_str) you_input = input("請輸入驗證碼,不區分大小寫.\n") if s_str.upper() == you_input.upper(): print("驗證通過!") else: print("驗證失敗,請重新輸入!")
運行結果:
請輸入驗證碼:AkJM
請輸入驗證碼,不區分大小寫.
akjm
驗證通過!
3,swapcase 大小寫翻轉,大寫變成小寫,小寫變成大寫,代碼如下,以省略上面的代碼。
#大小寫翻轉,大寫的變成小寫,小寫的變成大寫 s3 = s.swapcase() print(s3)
運行結果:
DMAILt
4,title,被特殊字符或者數字分隔開的單詞首字母變成大寫。
#每個隔開(特殊字符或者數字)的單詞首字母大寫 s = ',are$you_ok9thank*you' s4 = s.title() print(s4)
運行結果:
,Are$You_Ok9Thank*You
5,center,文字居中,可以設置填充字符,默認是空白。
#center 字符串居中,可以設置空白填充字符 s = 'Damil!' s5 = s.center(20,"*") print(s5)
運行結果:
*******Damil!*******
6,expandtabs \t 將\t替換掉,\t前面長度低於8位,可以用空白填充到第八位(該方法不常用)
#expandtabs \t 將\t替換掉,\t前面長度低於8位,可以用空白填充到第八位 s = 'Dmail\tstr' print(s) s6 = s.expandtabs() print(s6)
運行結果:
Dmail str
Dmail str
7,公共方法
#公共方法 len s="adsjfdkjshf146456" l = len(s) print(l)
運行結果:
17
8 、startswith ,判斷字符串開頭 返回bool類型。(endswith同理,用來判斷某塊字符串以什么結尾)
#startswith 判斷字符串開頭 返回bool類型 s = 'DmailUserName' s7 = s.startswith(s) s71 = s.startswith(s,2,5) print(s7,s71)
運行結果:
True False
9,find 查找字符串(參數2start 和 參數3 end,填寫起始位置可以進行切片查找。)
#find 查找字符串,找到了則返回對應元素的下標,否則返回-1。 s = 'helloWorld' s8 = s.find('hello') s81 = s.find('hellodd') print(s8,s81,type(s8))
運行結果:
0 -1 <class 'int'>
10,strip 默認刪除空格,前后的空格。也可以刪除其他符號,比如想要刪除字符串前面后面的%和*號 ,s.strip('%*')
# strip 刪首尾的空格 s = ' Dmail ' print(s) s9 = s.strip() print(s9)
運行結果:
Dmail
Dmail
補充:rstrip 從后面刪,前面的不刪
lstrip 從前面刪,后面的不刪
11,count 計算字符串包含多少個指定元素,返回包含個數。沒有就返回0。該方法可以將字符串切片進行查找。
#count s = 'aaaaaasjjjaaaaajajja' print(s.count('a'))
運行結果:
13
12,split 分割字符串,返回列表元素。
#split s = 'Java|Python|C++' l = s.split('|') print(l,type(l))
運行結果:
['Java', 'Python', 'C++'] <class 'list'>
13,format的三種玩法 格式化輸出
#format的三種玩法 格式化輸出 s = '我叫{},今年{}歲,愛好{},再說一下,我叫{}。'.format('狗子',2,'啃骨頭','狗子') print(s) s = '我叫{0},今年{1}歲,愛好{2},再說一下,我叫{0}。'.format('狗子',2,'啃骨頭','傻逼') print(s) s = '我叫{name},今年{age}歲,愛好{hobby},再說一下,我叫{name}。'.format(name='狗子',age=2,hobby='啃骨頭') print(s)
運行結果:
我叫狗子,今年2歲,愛好啃骨頭,再說一下,我叫狗子。
我叫狗子,今年2歲,愛好啃骨頭,再說一下,我叫狗子。
我叫狗子,今年2,愛好啃骨頭,再說一下,我叫狗子。
14,replace,替換字符串。
#replace 替換字符串 s = '狗子今天來到街道,看到了一根骨頭,還認識到了另外一個狗子。' s10 = s.replace('狗子','小貓') s10 = s10.replace('一根骨頭','一片小魚干') print(s10)
運行結果:
小貓今天來到街道,看到了一片小魚干,還認識到了另外一個小貓。
15,is系列
#is 判斷是否只由數字組成 s = '123456' s11 = s.isdigit() print(s11,type(s11)) #is 判斷是否為數字或者字母組成 s = 'aaammmdm2323' s11 = s.isalnum() print(s11,type(s11)) #is 判斷是否只有字母組成 s11 = s.isalpha() print(s11,type(s11))
運行結果:
True <class 'bool'> True <class 'bool'> False <class 'bool'>
其他方法查找: