Python基礎-列表、元組、字典、字符串(精簡解析),全網最齊全。

一.列表python

=====================================================
1.列表的定義及格式:git

列表是個有序的,可修改的,元素用逗號隔開,用中括號包圍的序列。api

格式:變量名 = [ 元素1,元素2,元素3...]app

做用:存儲多個數據函數

列表推導式:重點學習

 

 1 '''列表推導式'''
 2 list_t = [i for i in range(10)]  3 print(list_t) # [0,1,2,3,4,5,6,7,8,9]  4 
 5 '''實例'''
 6 print('實例:')  7 for i in range(101):  8     if i % 2 == 0:  9         print(i) 10 
11 print("等同於實例") 12 listDouble = [i for i in range(101) if i % 2 == 0] 13 print(listDouble)

 

 

 

2.列表的索引:spa

經過索引獲取表中的書記,索引從0開始code

注意:不要索引越界orm

s = [ 'hello',a,b,c ]blog

print(s[1]) 

輸出結果:a   

用for循環遍歷列表:

name = [ 'zs','ls','ww' ]

for i in name:

      print( i )

輸出結果:zs

                  ls

                  ww

3.列表的添加:append(),  insert(),  extend() 方法。

 1 # append 
 2 lst = ['悟空','八戒','唐僧']  3  
 4 lst.append('白骨精')      # append 向列表末尾增長指定元素
 5  
 6 print(lst)  7  
 8 # 輸出結果: ['悟空', '八戒', '唐僧', '白骨精']
 9  
10 -------------------------------------------------------------------------------------------
11  # insert 
12 lst = ['悟空','八戒','唐僧'] 13  
14 lst.insert(1,'白骨精')     # insert 往列表制定位置添加制定元素,負索引倒敘插入。超過索引插入末尾
15  
16 print(lst) 17  
18 # 輸出結果: ['悟空', '白骨精', '八戒', '唐僧']
19 ------------------------------------------------------------------------------------------
20 #extend
21  
22 lst = ['悟空','八戒','唐僧'] 23  
24 lst1 = ['悟空','八戒','唐僧','悟空'] 25  
26 lst.extend(lst1)                # 將一個列表中的元素添加到另外一個列表的尾部合併,不會去重。
27  
28 print(lst) 29  
30 # 輸出結果: ['悟空', '八戒', '唐僧', '悟空', '八戒', '唐僧', '悟空']

4.列表的刪除:pop(),remove(),clear(),del 方法。

 1 # pop 刪除指定索引位上的元素,默認刪除-1的數據
 2  
 3 lst = ['悟空','八戒','唐僧']  4  
 5 lst.pop(1)  6  
 7 print(lst)  8  
 9 輸出結果:['悟空', '唐僧'] 10  
11 lst = ['悟空','八戒','唐僧'] 12  
13 lst.pop() 14  
15 print(lst) 16  
17 輸出結果:['悟空', '八戒'] 18 -----------------------------------------------------------------------------------------
19 # remove 從左往右刪除指定的元素,
20  
21 lst = ['悟空','八戒','唐僧'] 22  
23 lst.remove('八戒') 24  
25 print(lst) 26  
27 # 輸出結果:['悟空', '唐僧']
28 -----------------------------------------------------------------------------------------
29 # clear 清空列表中全部的元素,返回一個空列表
30  
31 lst = ['悟空', '八戒', '唐僧'] 32  
33  
34  
35 lst.clear() 36  
37  
38  
39 print(lst) 40  
41 輸出結果:[ ] 42 -----------------------------------------------------------------------------------------
43 # del 刪除整個列表或列表的數據,del是python內置功能,不是列表獨有的 44  
45  
46 ​lst = ['悟空', '八戒', '唐僧'] 47  
48 del lst 49  
50 print(lst) 51  
52 輸出結果:​​​​NameError: name 'lst' is not defined (報錯)由於不存在,全部報錯
=============================
del 還能指定刪除某位置的數據
=============================
1 newL = [5, 8, 6, 5, 74, 5, 5, 46, 1] 2 del newL[8]  # # 刪除指定索引值爲8的數據,這裏刪除最後一個數據1
3 print(newL)  # [5, 8, 6, 5, 74, 5, 5, 46]
 
 

 



 5.列表的查詢:count(),index() 方法。

1 # count 返回指定元素在列表的個數
2  
3 lst  = ['hello','world','hello','python'] 4  
5 print(lst.count('hello'))  # 輸出2
1 lst = ['悟空', '八戒', '唐僧', '悟空'] 2 num1 = lst.index('悟空')  # index 查看指定數據在列表的索引位置
3 print("悟空在", num1)  # 這裏輸出0

6.列表的修改:直接修改,方式以下:list[要修改的數據的索引值]=新的數據

1 lst = ['悟空', '八戒', '唐僧'] 2  
3 lst[0] = '白龍馬'   # 將列表第一位數值爲替換爲‘白龍馬’
4  
5 print(lst) 6  
7 輸出結果:['白龍馬', '八戒', '唐僧']

7.列表的切片:

 1 '''列表的切片'''
 2 listCut = [i for i in range(20) if i % 2 != 0]  # 生成0-20全部單數的列表
 3 print("例子列表", listCut)  # 輸出:例子列表 [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
 4 # 輸出:例子列表 [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
 5 print(listCut[0: 6])  # 0到5左邊開始索引的數據 左閉右開(左邊0是包含索引值,右邊6是6以前的索引值)
 6 # 輸出[1, 3, 5, 7, 9, 11]
 7 print(listCut[::2])  # 每隔2個數字取一個值
 8 # 輸出[1, 5, 9, 13, 17]
 9 print(listCut[::-1])  # 逆序/反序排序 等同於List.reverse()
10 # 輸出[19, 17, 15, 13, 11, 9, 7, 5, 3, 1]
11 print(listCut[-4:])  # 取後四位,負數是右邊開始取
12 # 輸出[13, 15, 17, 19]
13 print(listCut[-4:-1])  # 右邊開始取,取後4位到後2位值,左閉右閉,(-4包括,-1包括)
14 # 輸出[13, 15, 17]

8.列表的排序和翻轉:sort(),reverse() 方法。

 1 sort() 按照ascii碼錶順序進行排序  2  
 3 lst = ['tom', 'james', 'jerry', 'zs', 'ls']  4  
 5 lst.sort()  6  
 7 print(lst)  # 從小到大排序
 8  
 9 輸出結果:['james', 'jerry', 'ls', 'tom', 'zs'] 10  
11  
12 lst.sort(reverse=True)  # 有大到小排序
13  
14  
15 print(lst) 16  
17 輸出結果:['zs', 'tom', 'ls', 'jerry', 'james'] 18 ------------------------------------------------------------------------------------
19 reverse() 將列表翻轉(逆序) 20  
21 lst = ['tom', 'james', 'jerry', 'zs', 'ls'] 22  
23 lst.reverse() 24  
25 print(lst) 26  
27 輸出結果:['ls', 'zs', 'jerry', 'james', 'tom']

9.列表的拷貝:copy()方法。

 1 淺拷貝:  2  
 3 lst1 = ['西施','貂蟬',['悟空','八戒']  4  
 5 lst2 = lst1.copy()   #將lst1 的內容拷貝一份給lst2, 二者的id 不同
 6  
 7 print(lst2)  8  
 9 lst2[0] = '楊貴妃'   #lst2 中的西施改爲楊貴妃
10  
11 print(lst2) 12  
13 輸出結果:['西施', '貂蟬', ['悟空', '八戒'] 14          ['楊貴妃', '貂蟬', ['悟空', '八戒'] 15  
16 ------------------------------------------------------------------------------------
17  
18 深拷貝: 19  
20 import copy 21  
22 lst1 = ['西施','貂蟬',['悟空','八戒'] 23  
24 lst2 = copy.deepcopy(lst1) 25  
26 print(lst2) 27  
28 lst2[0] = '楊貴妃'
29  
30 print(lst2) 31  
32 輸出結果:['西施', '貂蟬', ['悟空', '八戒'] 33          ['楊貴妃', '貂蟬', ['悟空', '八戒']

 

二.元祖

=====================================================
1.元組的定義及特色:

定義:

           經過()來定義:變量名=(1,2,3,4,) 。以逗號分割的,以小括號包圍的序列。

           經過tuple函數定義: lst=[1,2,3,4] 變量名=tuple(lst)

特色:

            元組是有序的,不能更改的,因爲元組不可變 ,因此遍歷元組要比列表快。

2.元組的訪問:

經過索引,默認從0開始

 1 經過索引,默認從0開始  2  
 3 tup = (1,2.2,True,'hello')  # 得到2.2的值,必定要注意索引越界的問題
 4  
 5  
 6 print(tup[1])  7  
 8 # 輸出結果:2.2
 9 -------------------------------------------------------------------------------------------
10 經過切片: 11  
12 tup = (1,2.2,True,'hello') 13  
14 print(tup[0:4:2]) 15  
16 # 輸出結果:(1,True)
17 -----------------------------------------------------------------------------------------
18 訪問多維元組: 19  
20 tup = (('zs',10),('ls',11),('ww',12)) 21  
22 print(tup[1][0]) 23  
24 # 輸出結果:ls

3.使用多個變量來接受元組的值:

 1 tup = (('zs',10),('ls',11),('ww',12))  2  
 3 name,age,height,weight = ('zs',18,1.64,150)  4  
 5 print(name)  6  
 7 print(age)  8  
 9 print(height) 10  
11 print(weight) 12  
13 for name, age in tup:     #for 循環遍歷多重元組,注意變量的數目一致性
14  
15     print(name,age) 16  
17  
18  
19 輸出結果: zs 20                    18
21                    1.64
22                    150
23                    zs 10
24                    ls 11
25                    ww 12

  4.元組的方法:index(),count(),len() 方法。

 1 tup = ('a','b','c','c','b','a','x')  2  
 3  
 4  
 5 print(tup.index('b')) # index() 獲取數據在元組的索引值  6  
 7  
 8  
 9 print(tup.index('a',2,len(tup))) # len()獲取元組的長度值 10  
11  
12  
13 print(tup.count('a')) # count() 獲取數據在元組的總個數 14  
15  
16  
17  
18 輸出結果: 1
19           
20          5
21              
22          2

5.一個逗號的魅力:

1 tup = (1,) 2  
3 print(tup) # 輸出結果(1,) 4  
5 tup1 = (1) 6  
7 print(tup1)  # 輸出結果 1

 

三.字典

=====================================================

1.字典的定義及格式:

定義:字典是一個無序的,能夠修改的,元素呈鍵對值的形式,以逗號分隔,大括號包圍的序列。

格式:變量名={key:value,key:value}

注意:字典中的key是不可變的類型,value是可變類型的

定義以下:

 1 # 字典是無序的數據集合
 2 # 鍵(key)值(value)對
 3 # 鍵只能使用字符串,元組 ,數字(不可變),值能夠是任何的數據類型
 4 tony = {  5     "name": "TONY",  6     "age": 27,  7     "height": 1.73,  8     "weight": 55,  9       6: (6,), 10       (7,): () 11 } 12 print(tony) 13 # 輸出爲:{'name': 'TONY', 'age': 27, 'height': 1.73, 'weight': 55, 6: (6,), (7,): ()}

取值以下:

1 tony_dic = {"name": 'tony', "height": 1.73, (6,): (7,)} 2 # 字典的取值
3 print(tony_dic["name"])  # 輸出tony
4 print(tony_dic[(6,)])  # 輸出(7,)

2. 字典的增長:setdefault() 方法。

 1 # setdefault()鍵存在就不添加,不存在就添加默認的值。
 2 
 3 dic = {'name': 'zs', 'age': 10, 'height': 1.75}  4 
 5 dic.setdefault('weight', 170)  # 鍵存在就不添加,不存在就添加默認的值。
 6 
 7 print(dic)  8 
 9 dic.setdefault('weight', 180) 10 
11 print(dic) 12 
13 輸出結果:{'name': 'zs', 'age': 10, 'height': 1.75, 'weight': 170} 14 
15 {'name': 'zs', 'age': 10, 'height': 1.75, 'weight': 170} 16 
17 ---------------------------------------------------------------------------------------
18 dic = {'name': 'zs', 'age': 10, 'height': 1.75} 19 
20 dic['name'] = 'ww'  # 根據key鍵來設置值,若是key存在就直接覆蓋原有的值
21 
22 print(dic) 23 
24 輸出結果: {'name': 'ww', 'age': 10, 'height': 1.75}

3.字典的刪除:pop(),popitem(),clear(),del 方法。

 1 pop()  2  
 3 dic = {'name': 'zs', 'age': 10, 'height': 1.75}  4  
 5 dic.pop('name')   # 根據鍵刪除值
 6  
 7 print(dic)  8  
 9 輸出結果: {'age': 10, 'height': 1.75} 10 ------------------------------------------------------------------------------------------
11 popitem() 12  
13 dic = {'name': 'zs', 'age': 10, 'height': 1.75} 14  
15 dic.popitem()   # 隨機刪除一個鍵值對
16  
17 print(dic) 18  
19  
20 輸出結果:{'name': 'zs', 'age': 10} 21  
22 -----------------------------------------------------------------------------------------
23 clear() 24  
25 dic = {'name': 'zs', 'age': 10, 'height': 1.75} 26  
27 dic.clear()   # 清空字典裏全部的鍵值對
28  
29 print(dic) 30  
31  
32 輸出內容:{}  # 字典仍是存在的,只是沒有數據,全部輸出空字典。
33 =======================================
34  
35 del dic  # 字典刪除
36  
37 print(dic) # 字典刪除了,全部輸出會報錯,找不到字典
38  
39 輸出結果:NameError: name 'dic' is not defined  (報錯)

 4.字典的修改:使用鍵修改或者update()方法。

 1 # 使用key修改:
 2     
 3  dic = {'name':'zs','age':10,'height':1.78}  4  
 5  dic['name'] = '張三'
 6  
 7  print(dic)  8  
 9  
10 輸出結果: {'name':'張三','age':10,'height':1.78} 11  
12 ---------------------------------------------------------------------------------------
13  
14 update() 按照字典的格式更新鍵的內容,若果字典不存在這個鍵,就建立這個鍵和值 15  
16 dic = {'name': 'zs', 'age': 10, 'height': 1.78} 17  
18 dic1 = {'name':'張三','weight':152} 19  
20 dic.update(dic1) 21  
22 print(dic) 23  
24  
25 輸出結果:{'name': '張三', 'age': 10, 'height': 1.78, 'weight': 152}

5.字典的查找:get(),keys(),values(),items(),len()方法。

 1 c = {'name': 'zs', 'age': 10, 'height': 1.78}  2  
 3 print(dic.get('name'))     # get()根據鍵來獲取相應的值,若是鍵不存在,默認返回None
 4  
 5 print(dic.keys())          # 返回一個包含字典全部key的列表
 6  
 7 print(dic.values())        # 返回一個包含字典全部value的列表
 8  
 9 print(dic.items())         # 返回字典鍵值,返回呈元組的形式
10  
11 print(len(dic))            # 測量字典鍵值對的個數,注意是鍵值對。
12  
13  
14  
15  
16 輸出結果: 17  zs 18  
19           dict_keys(['name', 'age', 'height']) 20  
21           dict_values(['zs', 10, 1.78]) 22  
23           dict_items([('name', 'zs'), ('age', 10), ('height', 1.78)]) 24  
25           3

6.for 循環及字典的遍歷:keys(),values(),items() 方法,其中items()方法有兩種遍歷方式。

 1 dic = {'name': 'zs', 'age': 10, 'height': 1.75}  2  
 3 # 獲取全部的key
 4  
 5 for key in dic:  6  
 7     print(key)  8  
 9 for key in dic.keys(): 10     
11     print(key) 12  
13 輸出結果: 14  name 15  
16  age 17  
18  height 19 -------------------------------------------------------------------------------------
20 # 獲取全部的value
21  
22 for value in dic.values(): 23  
24     print(value) 25  
26 輸出結果:zs 27  
28          10
29  
30          1.75
31 -------------------------------------------------------------------------------------
32 # 獲取全部的鍵值對,並以元組的形式返回:
33  
34 for item in dic.items(): 35     
36     print(item) 37  
38  
39 輸出結果: 40          ('name', 'zs') 41  
42          ('age', 10) 43  
44          ('height', 1.75) 45  
46  
47 # 字典的遍歷:
48  
49 for key,value in dic.items(): 50  
51     print(key,value) 52  
53  
54 輸出結果: 55  
56  name zs 57  
58           age 10
59  
60           height 1.75
------------------------------------

 7:字典的各類排序,sorted()方法運用。後面能夠接keys(),values(),items(),還有lamda方法

 1 dic_height = {"tony": 1.73,  2               "lucy": 1.88,  3               "lili": 1.66,  4               "kity": 1.70
 5  }
-------------------------------------
6 '''輸出value值的列表''' 7 v = sorted(dic_height.values()) # 經過value排序,從小到大,序排序 8 v2 = sorted(dic_height.values(), reverse=True) # 經過value排序,從小到大,序排序
------------------------------------------------------------------------------------
9 '''輸出key值的列表''' 10 d = sorted(dic_height.keys()) # 經過key順序序排序 11 d2 = sorted(dic_height.keys(), reverse=True) # 經過key順序序排序 12 k = sorted(dic_height) # 統統過key順序序排序(默認排序key) 13 k2 = sorted(dic_height, reverse=True) # 統統過key順序序排序(默認排序key)
------------------------------------------------------------------------------------
14 '''輸出('key',value)爲元組的數據列表''' 15 i = sorted(dic_height.items()) # 經過key順序排序,輸出元組數據類型的列表 16 i2 = sorted(dic_height.items(), reverse=True) # 經過key順序排序,輸出元組數據類型的列表 17 t = sorted(dic_height.items(), key=lambda item: item[1]) # 1和-1結果同樣 18 # 經過value順序排序,輸出元組數據類型的列表 19 t2 = sorted(dic_height.items(), key=lambda item: item[1], reverse=True) # 1和-1結果同樣 20 # 經過value順序排序,輸出元組數據類型的列表 21 --------------------------------------------------------------------------------------- 22 ############################################### 23 print(v) # 輸出爲:[1.66, 1.7, 1.73, 1.88] 24 print(v2) # 輸出爲:[1.88, 1.73, 1.7, 1.66] 25 print(d) # 輸出爲:['kity', 'lili', 'lucy', 'tony'] 26 print(d2) # 輸出爲:['tony', 'lucy', 'lili', 'kity'] 27 print(k) # 輸出爲:['kity', 'lili', 'lucy', 'tony'] 28 print(k2) # 輸出爲:['tony', 'lucy', 'lili', 'kity'] 29 print(i) # 輸出爲:[('kity', 1.7), ('lili', 1.66), ('lucy', 1.88), ('tony', 1.73)] 30 print(i2) # 輸出爲:[('tony', 1.73), ('lucy', 1.88), ('lili', 1.66), ('kity', 1.7)] 31 print(t) # 輸出爲:[('lili', 1.66), ('kity', 1.7), ('tony', 1.73), ('lucy', 1.88)] 32 print(t2) # 輸出爲:[('lucy', 1.88), ('tony', 1.73), ('kity', 1.7), ('lili', 1.66)]

其實還有更復雜的排序,關鍵在於lamda方法的使用這裏先不講lamda方法。

四.字符串

=====================================================

1.字符串的建立定義以及遍歷,for...in... 方法:

字符串是有序的,不可更改的,元素用引號包圍的序列。

三引號,雙引號或單引號中的數據就是字符串。例如:"hello"      'world'

 1 str1 = "hello python"  # 空格也佔用字符
 2 str2 = "咱們是8期的學員"
 3 print(str1[5])  # 空格被打印,索引5是空格
 4 print(str1[3])  # 打印順數索引3的數據 打印l
 5 print(str1[-1])   # 打印逆數第一個數據,打印n
 6 print(str1[::-1])  # 逆序打印(翻轉),打印nohtyp olleh
 7 
 8 for char in str2:  # 字符串遍歷
 9     print(char)  # 逐個豎着輸出"咱們是8期的學員"
10 
11 12 13 14 8
15 16 17 18

2.字符串的統計操做,len(),count(),index()方法。

 1 str1 = "hello python"
 2 # 字符串長度的統計
 3 print(len(str1))  # 輸出12
 4 # 字符出現的次數
 5 print(str1.count("thon"))  # 輸出1
 6 print(str1.count("l"))  # 輸出2
 7 print(str1.count("abcd"))  # 輸出0
 8 # 某一個字符串出現的位置
 9 print(str1.index("llo"))  # "llo"裏面的第一個字母出現的索引位置 輸出2
10 print(str1.index("abcd"))  # 會報錯substring not found,由於abcd不存在

3.字符串的查找:count(),find(),rfind(),index(),rindex()方法。

 1 s = 'Hello world Python'   # 注意:字符串中的空格也算在索引內
 2  
 3 print(s.count('o'))        # 計算'o'在是中的個數。輸出3
 4  
 5 print(s.find('l'))         # 查找,返回從左第一個指定字符的索引,找不到返回-1,輸出2
 6  
 7 print(s.find('c'))         # 字符串中沒有發現就返回-1 輸出-1
 8  
 9 print(s.rfind('o'))        # 字符串從右至左找第一個字符,可是索引是從左往右索引。輸出16
10  
11 print(s.index('h'))        # 尋找指定字母在字符串的位置的索引,找不到會報錯。輸出0
12 13 print(s.rindex('h')) # 和rfind相似,可是找不到會報錯 輸出15 14 15

 4.字符串的拆分和鏈接:

          拆分:split(),partition(),splitlines(),

 1 s = 'Hello world Python'
 2  
 3 print(s.split('w'))    # 按照指定內容進行拆分,分爲指定部分前 和指定部分後兩部分。返回列表形式。
 4 
 5 輸出結果: ['Hello ', 'orld Python']  6 
 7  
 8 print(s.partition('orl'))   # 按照指定內容進行拆分,分爲指定部分前 ,指定部分和 指定部分後三部分,返回元組形式。
 9 
10 輸出結果: ('Hello w', 'orl', 'd Python') 11 
12                               
13 s = 'Hello\n world\n Python'
14  
15 print(s.splitlines())               # 按照換行符分割,返回列表的形式
16 
17 輸出結果:  ['Hello', ' world', ' Python'] 18 
19  
20 print(s.splitlines(keepends=False))  # keepends=False 默認不顯示換行符,返回列表的形式
21 
22 輸出結果:['Hello', ' world', ' Python'] 23 
24  
25 print(s.splitlines(keepends=True))  # keppends=True 默認顯示換行符,返回列表的形式
26  
27  輸出結果:['Hello\n', ' world\n', ' Python'] 28

             鏈接:join()方法。

 1 str1 = " \t\n登鸛雀樓\n\t王之渙\r\n 白日依山盡 \t \n黃河入海流\t\n 欲窮千里目\n\r\t更上一層樓"
 2 print(str1)  3 
 4 輸出很亂,以下:  5         
 6 登鸛雀樓  7  王之渙  8  白日依山盡  9 黃河入海流 10  欲窮千里目 11  更上一層樓 12 
13 # 拆分字符串
14 poemList = str1.split()  # 默認空白字符分割()裏面能夠寫分割字符str.split("分割關鍵字符")
15 print(poemList) 16 輸出:['登鸛雀樓', '王之渙', '白日依山盡', '黃河入海流', '欲窮千里目', '更上一層樓'] 17 
18 # 字符串的合併
19 ret = " ".join(poemList)  # 用空格鏈接
20 print(ret) 21 輸出:登鸛雀樓 王之渙 白日依山盡 黃河入海流 欲窮千里目 更上一層樓 22 
23 ret = ",".join(poemList)  # 用,鏈接
24 print(ret) 25 輸出:登鸛雀樓,王之渙,白日依山盡,黃河入海流,欲窮千里目,更上一層樓

 5.字符串的替換:通常使用replace()方法就能夠,translate,maketrans合用比較複雜,這裏不介紹。

 1 s = 'Hello world Python'
 2 
 3 print(s.replace('o', '0'))  # 將字符串中全部的o 替換成0 默認所有替換
 4 
 5 print(s.replace('o', '0', 2))  # 第三個參數,是指定替換的個數
 6 
 7 # 輸出結果: Hell0 w0rld Pyth0n
 8 # Hell0 w0rld Python
 9 
10  ----------------------------------------------------------------------------------
11 # translate, maketrans
12 # 按照對應關係來替換內容
13 
14 
15 s = 'Hello world,'
16 a = 'world,'
17 b = 'python'
18 ret = str.maketrans(a, b) 19 s1 = s.translate(ret)  # 必須一一對應
20 print(s1) 21 
22 # 輸出結果: Hehhy python

6.字符串的修飾:center(),ljust(),rjust(),zfill()方法。

 1 # center:將字符串按指定長度居中,若果不能左短右長,能夠指定填充內容,默認以空格填充。
 2  
 3 s = 'hello'
 4  
 5 print(s.center(10,'*'))   # 填充長度是10 ,用 * 填充
 6  
 7 輸出結果:**hello***
 8 -------------------------------------------------------------------------------------
 9 # ljust:讓字符串在指定的長度左齊,能夠指定填充內容,默認以空格填充
10       
11 # rjust:讓字符串在指定的長度右齊,能夠指定填充內容,默認以空格填充。
12  
13 # ljust 和 rjust
14 s = 'hello'
15 print(s.ljust(15, '~')) 16 print(s.rjust(15, '*')) 17  
18 輸出結果:hello~~~~~~~~~~
19          **********hello 20 -----------------------------------------------------------------------------------------
21 # zfill: 將字符串填充到指定長度,不足的地方從左開始填充0
22  
23 s = 'hello'
24  
25 print(s.zfill(10)) 26  
27 輸出結果:00000hello 28 -----------------------------------------------------------------------------------------
29 # strip: 去除空白符
30 
31 poem = [ 32     "\t\n你好大瑪", 33     "哥哥,弟弟你好\r", 34     "小妹你好", 35     "小姐你好\t\n", 36 ] 37 print(poem) 38 輸出爲:['\t\n你好大瑪', '哥哥,弟弟你好\r', '小妹你好', '小姐你好\t\n'] 39 
40 
41 for poem_str in poem: 42      print(poem_str.strip().center(10))  # 空格填充劇中,並去除空白符。
43 輸出爲: 44  你好大瑪 45  哥哥,弟弟你好 46  小妹你好 47    小姐你好

 7.字符串的變形轉換:upper(),lower(),swapcase(),title(),capitalize(),expandtabs()方法。

 1 # upper 將字符串中全部字母轉換爲大寫
 2 
 3 # lower 將字符串中全部字母轉化爲小寫
 4 
 5 # swapcase 將字符串中字母大小寫互換
 6 
 7 # title 將字符串中單詞首字母轉化爲大寫 
 8 
 9 # capitalize 只有字符串首字母大寫
10 
11 # expandtabs 將字符串中('\t')符號轉化爲tab(4個空格)
12 # -------------------------------------------------------------------------------------
13 s = 'Hello python'
14 
15 print(s.upper()) 16 
17 print(s.lower()) 18 
19 print(s.swapcase()) 20 
21 print(s.title()) 22 
23 print(s.capitalize()) 24 
25 s1 = 'hello\tpython'
26 
27 print(s1.expandtabs()) 28 
29 
30 
31 -----------------------------------------------------------------------------------------

 

  輸出結果:HELLO PYTHON
                    hello python

                    hELLO PYTHON
                    Hello Python
                    Hello python
                    hello   python

8.字符串的格式化:format()方法。

# format()用法:

# 相對基本格式化輸出採用'%'的方法,format()功能更強大, # 經過傳入參數進行格式化,並使用大括號{}代替 %

# 1.使用位置參數:位置必須一一對應:
 name = 'zs' age = 19

print('你們好,我叫{},今年{}歲'.format(name, age))  # 位置必須一一對應

print('你們好,我叫{0},我叫{0},我叫{0},今年{1}歲'.format(name, age)) #索引位置對應參數
 輸出結果:你們好,我叫zs,今年19歲 你們好,我叫zs,我叫zs,我叫zs,今年19歲 -----------------------------------------------------------------------------------------

# 2.使用關鍵字參數:

print('我叫{name},今年{age}歲了'.format(name='zs', age=19)) 輸出結果:我叫zs,今年19歲了

 9.字符串的判斷:

       大部分判斷都是返回bool型

 1 # 判斷字符串中是否只包含數字(詳細)
 2 numStr = "12414"
 3 numStr1 = "2312.22"
 4 numStr2 = ""
 5 numStr3 = "\u00b2"
 6 numStr4 = "" # 輸入法V+數字產生的數字符合
 7 
 8 # isdecimal只能夠判斷整數型字符串,不能判斷小數等其餘類型
 9 print("isdecimal分析結果") 10 print(numStr.isdecimal())  # True
11 print(numStr1.isdecimal())  # False
12 print(numStr2.isdecimal())  # False
13 print(numStr3.isdecimal())  # False
14 print(numStr4.isdecimal())  # False
15 
16 # isdigit能夠判斷整數型字符串,"\u00b2",⑴,但不能判斷小數,漢字數字(大寫)
17 print("isdigit分析結果") 18 print(numStr.isdigit())  # True
19 print(numStr1.isdigit())  # False
20 print(numStr2.isdigit())  # False
21 print(numStr3.isdigit())  # True
22 print(numStr4.isdigit())  # True
23 
24 # isnumeric能夠判斷整型數字,漢字的數字(大寫數字),⑴,"\u00b2",但不能判斷小數
25 print("isnumeric分析結果") 26 print(numStr.isnumeric())  # True
27 print(numStr1.isnumeric())  # False
28 print(numStr2.isnumeric())  # True
29 print(numStr3.isnumeric())  # True
30 print(numStr4.isnumeric())  # True
31 -----------------------------------------------------------------------------------------
32 
33 '''其餘判斷類型'''
34 
35 s = 'Hello123'
36 print(s.isalnum())  # True 判斷字符串是否徹底由數字和字母組成
37 
38 s1 = 'abcde'
39 print(s1.isalpha())  # True 判斷字符串是否徹底由字母組成
40 
41 s2 = 'abc123'
42 print(s2.isdigit())  # False 判斷zfc是否徹底由數字組成,上面已經詳細介紹
43 
44 s3 = ' abcDE'
45 print(s3.isupper())  # False 判斷字符串內字符是否全是大寫
46 
47 s4 = 'abcd'
48 print(s4.islower())  # True 判斷字符串內字符是否全是小寫
49 
50 s5 = 'Hello Python'
51 print(s5.istitle())  # True 判斷字符串中的單詞首字母是否大寫
52 
53 s6 = '     '
54 print(s6.isspace())  # True 判斷字符串是否徹底由空格組成
55 
56 s7 = 'hello python'
57 print(s7.startswith('h', 2, 4))  # False 判斷字符串在指定範圍內是否已指定字符開頭
58 print(s7.endswith('lo', 0, 5))  # True 判斷字符串在指定範圍內是否已指定字符結尾
59 
60 s8 = "hello world"
61 print(s8.startswith("hello"))  # True 判斷是否某個字符串開頭
62 print(s8.endswith("ld"))  # True 判斷是否某個字符串結尾

 方法有以下:

              isdecimal(),isdigit(),isnumeric(),isalnum(),isalpha(),isupper(),islower(),istitle(),isspace(),startswith(),endswith()。

=====================================================================================================================================================學習還有複查資料整合出來的,留着之後工做有用,或者學習常常查看,這裏學習安之老師佈置這個做業!雖然整合了我一天時間!-_-!
相關文章
相關標籤/搜索