字符串相關操做
字符串鏈接符號 +
字符串複製操做 例子:‘ * ’ * 20 複製了20個星星
經過指定位置(索引)來獲取指定位置的字符 [] 例子 str[1]來獲取第二個字符
取片操做[ : ]
[ : ] 獲取全部字符
[ 開始位置: ] 從開始位置獲取到字符串的結尾
[:結束位置]從字符串的開頭街區到字符串結束位置以前(左閉右開 不包含末尾位置的字符)
[ 開始位置; 結束爲止 ] 從字符串的開始位置取到結束位置以前(左閉右開 ,不包含末尾位置的字符)
r'字符串'
防止字符串中的轉移字符串實現功能, 把轉義字符看成普通字符使用
字符串相關函數
注意:如下的str不是模塊名稱 ,二十一個字符串變量!
capitalize() 首字母大寫
格式 : str.capitalize()
返回值:首字母大寫的字符串, 僅把整個字符串的第一個字符大寫
upper()將全部英文字符變爲大寫
格式 :str.upper()
返回值:全部英文字符大寫的字符串
lower()將全部英文字符變爲小寫
格式: str.lower()
返回值:全部英文字符小寫的字符串
swapcase()大小寫互相轉換
格式: str.swaocase()
返回值:轉換以後的字符串
title()按照標題格式進行大小寫轉換(每一個單詞首字母大寫)
格式:str.title()
返回值:返回全部英文單詞首字母大寫的字符串
len()計算字符串的字符個數,之後也能夠用於計算元組列表等序列
格式:len(str)
返回值:整型
count()計算一個字符串中出現指定字符串的次數
格式:str.count(查找的字符串 , 開始位置 , 結束位置)
返回值:整型
find()查找字符串中是否具備指定的字符串,查找不到返回-1
個事故:str.find( 查找的字符串 , 開始位置 , 結束位置)
返回值:第一次出現的位置
index()查找字符串中是否具備指定的字符串,查找不到直接報錯
格式:str.index(查找的字符)
返回值:第一次出現的位置
其中 find()和index()功能基本類似
startswith()檢測字符串是否以指定的字符串開頭
格式:str.startswith( 查找的字符串 , 開始位置 , 結束位置)
返回值:布爾值
endswith()檢測字符串是否以指定的字符串結尾
格式:str.endswith(查找的字符串 , 開始位置, 結束位置)
isupper()檢測字符串中字母是否都是大寫字母
格式:str.isupper()
返回值:布爾值
islower()檢測字符串中的字母是否都是小寫字母
格式:str.islower()
返回值:布爾值
isalnum()檢測一個字符串是否都是有數字或者是否都是由字母組成
格式:str.isalnum()
返回值:布爾值
空字符串返回False
isdigit()檢測字符串是否由純數字字符組成
格式:str.isdigit()
返回值:布爾值
空字符串返回False
isspace()檢測字符串是否徹底由空白字符組成
格式:str.isspace()
返回值:布爾值
回車, 換行,縮進,空額均可以看成空白字符,空字符串是False;
istitle()檢測字符串是否符合title()的結果,每一個單詞首字母大寫
格式:str.istitle()
返回值:布爾型
isnumeric()檢測字符串是否由純數字組成
格式: str.isnumeric()
返回值:布爾值
isdecimal()檢測字符串是否徹底由十進制字符組成
格式:str.isdecimal()
返回值:布爾值
split()使用指定的字符將字符串拆解成多個字符串
格式:str.split('用於拆解的字符串')
返回值:列表類型
splitliness()使用\n,\r或者\r\n切割字符串
格式:str.splitliness()
返回值:列表類型
join()使用指定的字符串將序列中的內容組成新的字符串
格式:鏈接字符串.join(序列)
返回值:組成新的字符串
zfill()0填充操做
格式:str.zfill(長度)
返回值,填充0的字符串
填充結果原有內容靠右對齊,前面位數不足使用0來補充,經常使用於數字類型字符串
cente )將字符串進行居中操做,而且在空白處進行填充
格式:str.center(將來字符寬度,空白填充字符)
返回值:新的字符串
ljust()將字符串進行左對齊操做,而且在空白處進行填充
格式:str.ljust(將來字符寬度,空白填充字符)
返回值:新的字符串
rjust()將字符串進行右對齊操做,而且在空白處進行填充
格式:str.rjust(將來字符寬度,空白填充字符)
返回值:新的字符串
lstrip() 去掉字符串左側的空白
格式: str.lstrip()
返回值:字符串
rstrip()去掉字符串右側的空白
格式: str.rstrip()
返回值:字符串
strip()去掉字符串兩側的空白
格式: str.strip()
返回值:字符串
replace()字符串替換操做
格式:str.replace(被替換的字符串,替換字符串)
返回值:替換以後的字符串
maketrans()製做一個字符串映射表,爲了給translate函數使用
格式:str.maketrans('被替換的字符串' ,'替換字符串')
返回值:字典類型,被替換字符串組成鍵 , 替換字符串組成值
注意: 兩個參數的字符串個數必須一一對應,這裏的str不是值字符串
而是真正的str,也能夠寫空字符串代替str(字符串都是str製做的)
translate()進行字符串翻譯操做,相似轉換
格式:str.translate(映射表)
返回值:新的字符串
注意:translate用於多字符替換,replace用於長字符串替換
獲取全部的空白字符
result = string.whitespace
print(result)
\n \r \t \x0b\0c
獲取ascii碼的全部字母表(包含大寫和小寫)
print(string.ascii_letters)
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
獲取ascii碼中的全部大寫字母
print(string.ascii_uppercase)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
獲取ascii碼中全部的小寫字母
print(string.ascii_lowercase)
abcdefghijklmnopqrstuvwxyz
獲取ascii碼中全部10進制數字字符
print(string.digits)
0123456789
獲取八進制全部數字字符
print(string.octdigits)
01234567
獲取十六進制的全部數字字符
print(string.hexdigits)
0123456789abcdefABCDEF
打印全部可見字符
print(string.printavle)
0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"$%&'()*+,-./:;<=>?@[\]^_`{|}~
打印全部標點符號
print(string.punctuation)
!"$%&'()*+,-./:;<=>?@[\]^_`{|}~
format格式字符串
''' 語法: 它經過{}和:來代替%。 注意:字符串的format函數能夠接受無限個參數,位置能夠不按順序,能夠不用或者用屢次,不過2.6不能爲空{},2.7才能夠。 「映射」示例 經過位置 In [1]: '{0},{1}'.format('kzc',18) Out[1]: 'kzc,18' In [2]: '{},{}'.format('kzc',18) Out[2]: 'kzc,18' In [3]: '{1},{0},{1}'.format('kzc',18) Out[3]: '18,kzc,18' 經過關鍵字參數 In [5]: '{name},{age}'.format(age=18,name='kzc') Out[5]: 'kzc,18' 經過對象屬性 class Person: def __init__(self,name,age): self.name,self.age = name,age def __str__(self): return 'This guy is {self.name},is {self.age} old'.format(self=self) In [2]: str(Person('kzc',18)) Out[2]: 'This guy is kzc,is 18 old' 經過下標 In [7]: p=['kzc',18] In [8]: '{0[0]},{0[1]}'.format(p) Out[8]: 'kzc,18' 有了這些便捷的「映射」方式,咱們就有了偷懶利器。基本的Python知識告訴咱們,list和tuple能夠經過「打散」成普通參數給函數,而dict能夠打散成關鍵字參數給函數(經過和*)。因此能夠輕鬆的傳個list/tuple/dict給format函數。很是靈活。 格式限定符號 它有着豐富的「格式限定符」(語法是花括號{}帶冒號:),如: 填充與對齊: 填充常跟對齊一塊兒使用 居中 = ^ 左對齊 = < 右對齊 = > 後面帶寬度 = :號後面帶填充的字符,只能是一個字符,不指定的話默認是用空格填充,以下: In [15]: '{:>8}'.format('189') Out[15]: ' 189' In [16]: '{:0>8}'.format('189') Out[16]: '00000189' In [17]: '{:a>8}'.format('189') Out[17]: 'aaaaa189' 精度與類型f: 精度常跟類型f一塊兒使用 In [44]: '{:.2f}'.format(321.33345) Out[44]: '321.33' 其中.2表示長度爲2的精度,f表示float類型。 其餘類型: 主要就是進制了,b、d、o、x分別是二進制、十進制、八進制、十六進制。 In [54]: '{:b}'.format(17) Out[54]: '10001' In [55]: '{:d}'.format(17) Out[55]: '17' In [56]: '{:o}'.format(17) Out[56]: '21' In [57]: '{:x}'.format(17) Out[57]: '11' 逗號,還能用來作金額的千位分隔符: In [47]: '{:,}'.format(1234567890) Out[47]: '1,234,567,890' '''