天天看點

python複習之字元串常用方法

假設字元串變量為S

常用字元串的方法:

S.isdigit() # 判斷字元串是否全為數字

>>> s1 = '123'
>>> s2 = 'a123'
>>> s1.isdigit()
True
>>> s2.isdigit()
False
           

S.isalpha() # 判斷是否全英文字元

>>> s1 = 'lsk'
>>> s2 = 'l1s2k3'
>>> s1.isalpha()
True
>>> s2.isalpha()
False
           

S.islower() # 判斷是否全為小寫

>>> s2 = 'Lsk'
>>> s1 = 'lsk'
>>> s1.islower()
True
>>> s2.islower()
False
           

S.isupper() # 判斷是否全為大寫字元串

>>> s1 = 'LSK'
>>> s2 = 'Lsk'
>>> s2.isupper()
False
>>> s1.isupper()
True
           

S.isspace() # 判斷字元串是否全為空白字元

>>> s1 = '   \n'
>>> s2 = '   23'
>>> s1.isspace()
True
>>> s2.isspace()
False
           

S.center(width[,fill]) # 将原字元串居中,左右預設填充空格

>>> s = 'LSK'
>>> s.center(9)
'   LSK   '
>>> s.center(9,'*')
'***LSK***'
           

S.count(sub[, start[, end]]) #擷取一個字元串中子串個數

>>> s = 'lsk is a boy'
>>> s.count(' ')
3
>>> s.count(' ',0,5)
1
           

S.find(sub[, start[, end]]) # 擷取字元串中子串sub的索引失敗傳回-1

>>> s = 'lsk is a boy'
>>> s.find('boy')
9
>>> s[9:]
'boy'
>>> s.find('boy',0,8)
-1
           

S.strip() # 傳回去掉左右空白字元的字元串

>>> s = '  LSK   '
>>> s.strip()
'LSK'
           

S.lstrip() # 傳回去掉左側空白字元的字元串

>>> s.lstrip()
'LSK   '
           

S.rstrip() # 傳回去掉右側空白字元的字元串

>>> s.rstrip()
'  LSK'
           

S.title() # 生成每個英文單詞首字母大寫的字元串

>>> s = 'lsk is a boy'
>>> s.title()
'Lsk Is A Boy'
           

S.upper() # 生成将英文轉換為大寫的字元串

>>> s.upper()
'LSK IS A BOY'
           

S.lower() # 生成将英文轉換為小寫的字元串

>>> s = s.upper()
>>> s.lower()
'lsk is a boy'
           

S.replace(old, new[,count]) # 将字元串old用new代替,生成一個新的字元串

>>> s.replace('boy','girl')
'lsk is a girl'
           
空白字元是指空格,水準制表符(\t) , 換行符(\n)等不可見字元
           

字元串格式化表達式:

作用:

    生成一定格式的字元串

運算符:

    %

文法:

    格式字元串 % 參數值

    或

    格式字元串 % (參數1,參數2,...)

示例:

>>> fmt = "name: %s, age: %d"
>>> name = 'LSK'
>>> age = 24
>>> fmt % (name,age)
'name: LSK, age: 24'
           

 格式化字元串的占位符:

%s 字元串

%r 字元串(使用repr熱不是str)

%c 整數轉為單個字元串

%d 十進制整數

%o 八進制整數

%x 十六進制整數(字元a-f小寫)

%X 十六進制整數(字元A-F大寫)

%e,%E 指數表示的浮點數

%f,%F浮點小數

%g,%G十進制形式的浮點數或指數浮點數自動轉換

%% 等同于一個字元 %

占位符% 和類型碼之間的格式文法

- 号 左對齊

+ 号 正負号

0 補零

width 寬度(整數)

pricision精度(整數)

示範:

>>> s = '%10d'%123
>>> s
'       123'
>>> len(s)
10

>>> s = '%-10d'%123
>>> s
'123       '

>>> s = '%010d'%123
>>> s
'0000000123'

>>> "%7.3f" % 3.14159265356268987932
'  3.142'
>>> "%7.2f" % 3.14159265356268987932
'   3.14'
>>> len("%7.2f" % 3.14159265356268987932)
7