str(字符串)前端
1.字符串是 Python 中最經常使用的數據類型。咱們能夠使用''
,""
, ''' '''
, """ """
這四種方式來定義字符串;python
a = 'x' b = "y" c = '''xxx''' d = """yyy""" print(a,b,c,d) #輸出:x y xxx yyy
2.字符串是不可變的,字符串一旦定義就不能改變;git
string = 'world' string = 'hello world'
3.字符串的轉義;api
\:續行符; \e:轉義; \n:換行; \ \:反斜槓符號; \ ":單引號; \ ":雙引號; \000:空; \v:縱向製表符; \t:橫向製表符; \r:回車; \f:換頁; \oyy:八進制數,yy表明的字符,例如:\o12表明換行; xyy:十六進制數,yy表明的字符,例如:\x0a表明換行; \other:其它的字符以普通格式輸出;
4.字符串能夠經過索引和循環迭代兩種方式來訪問;ide
# 索引訪問 str = 'hello' print(str[1]) #輸出:e # 循環迭代訪問 str1 = 'hello' for item in str1: print(item) #輸出:h e l l o
5.字符串的鏈接方式spa
string1 = 'hello' string2 = '\t' string3 = 'world' print(string1 + string2 + string3) #輸出:hello world
lst = ['1', '2', '3', '4', '5'] lst_new = ''.join(lst) print(lst_new) #輸出:12345
6.字符串的切割code
string1 = '1,2,3,4,5' new_obj1 = string1.split(',') new_obj2 = string1.split(',', maxsplit=1) print(new_obj1) #輸出:['1', '2', '3', '4', '5'] print(new_obj2) #輸出:['1', '2,3,4,5']
string1 = '1,2,3,4,5' new_obj1 = string1.rsplit(',') new_obj2 = string1.rsplit(',', maxsplit=1) print(new_obj1) #輸出:['1', '2', '3', '4', '5'] print(new_obj2) #輸出:['1,2,3,4', '5']
('\r', '\r\n', \n')
切割, keepends指是否保留分隔符,True爲保留,False不保留;string1 = 'I love xkd \nI love xkd' new_obj1 = string1.splitlines() new_obj2 = string1.splitlines(True) print(new_obj1) #輸出:['I love xkd ', 'I love xkd'] print(new_obj2) #輸出:['I love xkd \n', 'I love xkd']
_
下劃線代替;string1 = '1,2,3,4,5' new_obj1, seq, new_obj2 = string1.partition(',') print(new_obj1) #輸出:1 print(seq) #輸出:, print(new_obj2) #輸出:2,3,4,5 new_obj1, _, _ = string1.partition(',') print(new_obj1) #輸出:1
7.字符串對象方法orm
string = 'aBcd abcD' #初始化一個字符串string
print(string.upper()) #輸出:ABCD ABCD
print(string.lower()) #輸出:abcd abcd
print(string.swapcase()) #輸出:AbCD ABCd
print(string.title()) #輸出:Abcd Abcd
print(string.capitalize()) #輸出:Abcd abcd
print(string.center(100, '*')) 輸出:**********aBcd abcD***********
print(string.ljust(100, '*')) 輸出:aBcd abcD********************
print(string.rjust(100, '*')) 輸出:********************aBcd abcD
print(string.zfill(100)) 輸出:00000000000000000000aBcd abcD
8.字符串修改對象
string = 'age' print(string.replace('a', 'z')) #輸出:zge
string = ' age ' print(string.strip()) #輸出:age print(string.strip()) #輸出:age
print(string.rstrip()) #輸出: age print(string.lstrip()) #輸出:age
9.字符串查找索引
string = 'helloworld'
print(string.find('e')) #輸出:1
print(string.index('w')) #輸出:5
print(string.count('l')) #輸出:3
10.字符串判斷
string = 'hello' #初始化一個字符串string
print(string.startswith('')) #輸出:True
print(string.endswith('x')) #輸出:False
print(string.isalnum()) #輸出:True
print(string.isalpha()) #輸出:True
print(string.isdecimal()) #輸出:False
print(string.isdecimal()) #輸出:False
print(string.isidentifier()) #輸出:True
print(string.islower()) #輸出:True
print(string.isupper()) #輸出:False
print(string.isspace()) #輸出:False
11.符串格式化
print("I am %04d" % (100,)) # 前端補0 print('I am %s' % 'hello') # 字符串 print('%.3f' % (99.56789)) # 保留3位小數 print("I am %-5d" % (20,)) # 左對齊 print("I am %5d" % (20,)) # 右對齊
S.format(*args, **kwargs) -> str, 其中args爲元組,kwargs爲字典,花括號爲佔位符 1: 佔位 print('我是{}, 我在{}'.format('魚兒', '海里')) print('我是{0}, 我在{1}'.format('魚兒', '海里')) print('我是{1}, 我在{0}'.format('海里','魚兒',)) print('我是{1}, 我在{0}'.format(*('海里','魚兒'))) print('我是{name}, 我在{addr}'.format(name='魚兒', addr='海里')) print('我是{name}, 我在{addr}'.format(**{'name':'魚兒', 'addr':'海里'})) 2:對齊 # 指定100個位置,且左對齊 print('{0} + {1} = {2:<100}'.format(1,2,3)) # 指定100個位置,且右對齊 print('{0} + {1} = {2:>100}'.format(1,2,3)) # 指定100個位置,且左對齊,其餘地方補0 print('{0} + {1} = {2:0<100}'.format(1,2,3)) # 指定100個位置,且右對齊,其餘地方補0 print('{0} + {1} = {2:0>100}'.format(1,2,3)) # 指定100個位置,居中對齊 print('{0} + {1} = {2:^100}'.format(1,2,3)) # 指定100個位置,居中對齊, 其餘地方補0 print('{0} + {1} = {2:0^100}'.format(1,2,'不知道')) # 進制 print("int: {0:d} bin: {0:b} hex: {0:x} oct: {0:o} ".format(100)) print("int: {0:d} bin: {0:#b} hex: {0:#x} oct: {0:#o} ".format(100))
本文參考自俠課島(9xkd.com)Python同窗計劃