字符串python
增git
查
st.find(字符,StartIndex,EndIndex) # 返回查找到的字符串的索引位置,若是未找到將返回-1
st.count(字符) # 返回查找並統計這個字符串的數量
st.index(字符) # 返回查找的字符串的索引位置,若是未找到將報錯,推薦使用str.find
st.isdigit() # 判斷當前字符串是否由純數字組成返回True 或 False
st.isalpha() # 判斷當前字符串是否由純字符組成 返回True 或 False
st.islower() # 判斷當前字符串的全部英文字母是否全爲小寫字母 返回True 或 False
st.isupper() # 判斷當前字符串的全部英文字母是否全爲大寫字母 返回True 或 False
st.startswith('字符') # 判斷當前字符串是否爲'字符'開始 返回True 或 False
st.endswith('字符') # 判斷當前字符串是否爲'字符'結尾 返回True 或 False
strip()
刪除首和尾的空格 str.lstrip()
刪左首空格 str.rstrip()
刪右尾空格api
st.lower() 將當前字符串的英文所有修改成小寫字母函數
st.upper() 將當前字符串的英文所有修改成大寫字母spa
st.capitalize()
若是當前字符串的第一個字符爲不爲空的英文字母,則將該英文字母大寫,不然不進行任何操做code
>>> st = 'sahdjgk'
>>> st.capitalize()
'Sahdjgk'
>>>
st.split()
以列表方式分割字符串orm
>>> st
'sak sdjgio jkas'
>>> st.split()
['sak', 'sdjgio', 'jkas']
>>>
st.title()
將當前字符串中的每個分段的英文字母首字母大寫blog
>>> st= 'dsadasd weqewq dasdas,dadsadas,dasda'
>>> st.title()
'Dsadasd Weqewq Dasdas,Dadsadas,Dasda'
In [1]: st = 'akdjsoie dkjsai sjig'
In [2]: st.split('j',3) #以字符'j'來進行分割3次
Out[2]: ['akd', 'soie dk', 'sai s', 'ig']
st.replace(OldStr,NewStr,count) 文本替換,執行後將舊字符串替換爲新的字符串且能夠指定次數索引
In [5]: st = 'sjierijer'
In [6]: st.replace('i','gogo',1)
Out[6]: 'sjgogoerijer'
字符串的拼接 str1 + str2 + str3ip
In [1]: 'aaaa' + 'bbbb'
Out[1]: 'aaaabbbb'
格式化字符串 ' %s %s %s '.(str1,str2,str3) %s是佔位符
In [2]: ' %s %s ' % ('aaa','ccc')
Out[2]: ' aaa ccc '
使用join
’ ’.join([str1, str2, str3])
In [3]: '|||'.join(['aa','bb','cc'])
Out[3]: 'aa|||bb|||cc'
使用 format
' {} {} {} '.format(obj1,obj2,obj3)
' {0} {1} {2} '.format(obj1,obj2,obj3) #能夠經過索引改變順序
' {n0} {n1} {n2} '.format(n1=obj1,n0=obj2,n2=obj3)
字符串格式化
瞭解 >>> ' %d ' %12 #數字
' 12 '
>>> ' %f ' %12.1 #浮點數
' 12.100000 '
>>> ' %c ' %97 #ASCII字符
' a '
>>> ' %o ' %9 #8進制
' 11 '
>>> ' %x ' %15 #16進制
' f '
>>> ' %e ' %15 #科學計數法
' 1.500000e+01 '
>>>
>>> '%-6.3f'% 5456.3565
'5456.356'
>>> '%+-6.3f'% 59 #‘+’可以顯示符號
'+59.000'
>>> '%5s'%'ab' 格式化長度 ' ab' 掌握 >>> print( '%s' % '123' ) #以整型格式輸出
123
>>> print( '%r' % '123' ) #以字符串格式輸出
'123' format瞭解 >>> '{:.2f}'.format(1.2222) #保留小數點後2位
'1.22'
>>> '{n1:.2f}'.format(n1=1.2222) '1.22'
>>> '{n1:.2%}'.format(n1=1.2222) #百分比格式
'122.22%'
>>> '{0:x}'.format(20) #進制轉換的時候{0:進制}
'14'
>>> '{0:o}'.format(20) '24'
>>>
' {a:<10} ’.format(a=12.3,b=13.44) 左對齊,長度爲10
' {a:0<10} '.format(a=12.3,b=13.44) 數字補x (填充右邊, 寬度爲4) ' {a:0>10} ’.format(a=12.3,b=13.44) 右對齊...
' {a:0^10} '.format(a=12.3,b=13.44) 兩邊對齊... '{{ hello {0} }}'.format('python’) 轉義{和}符號
f = ' hello {0} '.format f('python’) 這裏能夠把format看成一個函數來看
字符前面加上 \ ,字符就再也不表示字符自己的意思,表示ASCII碼中不能顯示字符,常見有下:
In [1]: a = '''asdf ...: fdsa''' In [2]: a Out[2]: 'asdf\nfdsa' In [3]: print(a) #\n 換行 asdf fdsa In [4]: print('asdf\tsdf') #\t 水平製表符 asdf sdf In [5]: print('asdf\bsdf') #\b 退格 asdsdf In [6]: print('asdf\rsdf') #\r 回車,當前位置移到本行開頭 sdff In [7]: print('asdf\rsdf') #\r 回車,當前位置移到本行開頭 asdf\rsdf In [8]: print('asdf\'rsdf') #\’ 表明一個單引號,一樣的 「 ? 等符號也能夠這麼輸出 asdf'rsdf
In [9]: print('asdf\0rsdf') #\0 表明一個空字符 asdfrsdf In [10]: print('asdf\arsdf') #\a 系統提示音 asdfrsdf In [11]: print(r'asdf\arsdf') #在python中若是要去掉字符串的轉義,只須要在字符串前面加上 r asdf\arsdf