字符串、列表、字典和集合
阿新 • • 發佈:2018-08-27
disjoint 大寫 居中 編碼 ros 位置 itl 臨時 字符
一、字符串常用方法
1 #!/usr/bin/env python 2 #created by Baird 3 4 str = "my name is Baird." 5 str2= "my name is {name},I‘m from {nation}" 6 7 print(str.capitalize()) #轉換成大寫 8 print(str.count("a")) #統計字符a出現次數 9 print(str.center(50,"*")) #字符串居中顯示,長度50,不足時用*填充 10 print(str.endswith("rd.")) #判斷是否以 rd. 結束 11 print(str.expandtabs(tabsize=30)) #將\t轉換成30個空格 12 print(str.find("name")) #返回 name 第一次出現的位置,失敗返回-1 13 print(str2.format(name=‘Baird‘,nation=‘China‘)) #格式化輸出 14 print(str2.format_map({‘name‘:‘Baird‘,‘nation‘:‘China‘})) #以字典格式化輸出 15 print("abc123".isalnum()) #是否為純拉丁字符和阿拉伯數字16 print("abc".isalpha()) #是否為純拉丁字符 17 print("123".isdigit()) #是否為整數 18 print("123x".isdecimal()) #是否為十進制數 19 print(str.islower()) #是否為小寫 20 print("ABC".isupper()) #是否為大寫 21 22 print("+".join([‘1‘,‘2‘,‘3‘])) #將 + 穿插在123之中,輸出為 1+2+3 23 24 print(str.ljust(50,"*")) #字符串居左,長度不足50時用*填充 25 print(str.rjust(50,"*")) #字符串居右,長度不足50時用*填充 26 27 print("ABC".lower()) #轉換成小寫 28 print("abc".upper()) #轉換成大寫 29 30 print("\n123\n".strip()) #去除字符串中的換行 31 print("\n456\n".lstrip()) #去除字符串左邊的換行 32 print("\n789\n".rstrip()) #去除字符串右邊的換行 33 34 encryption = str.maketrans("ni","52") #以n->5,i->2的形式,返回編碼的字典 35 print(encryption) 36 print(str.translate(encryption)) #以encryption(字典類型)進行編碼 37 38 decryption = str.maketrans("52","ni") #解碼 39 print(str.translate(encryption).translate(decryption)) #解碼 40 41 print("abac".replace("a","A",1)) #將字符串中第一個 a 轉換成 A 42 43 print(str.rfind("m")) #返回最後一個 m 的位置 44 print(str.find("m")) #返回第一個 m 的位置 45 46 print(str.split()) #分割字符串為列表 47 print(str.split("m")) #m為分割點 48 49 print("abcABC".swapcase()) #大小寫互換 50 51 print("english speech and pronunciation".title()) #英文單詞首字母變大寫
二、列表常用方法
1 #!/usr/bin/env python 2 #created by Baird 3 4 names = ["托塔天王","玉皇大帝","孫悟空","唐僧","白龍馬","孫悟空"] 5 6 print(names[0:2]) #切片,左閉合右開 7 print(names[0:-1]) #-1表示從右數第一個 8 print(names[-2:]) #從倒數第二個到最後 9 10 names.append("豬八戒") #添加元素 11 print(names) 12 13 names.insert(1,"楊戩") #插入元素,位置1處開始所有元素後移 14 print(names) 15 16 names[1] = "哪咤" #修改下標為1的元素 17 print(names) 18 19 #names.remove("哪咤") #按值刪除 20 #del names[1] #按位置刪除 21 names.pop(1) #按位置刪除 22 print(names) 23 24 print(names.count("孫悟空")) #統計 25 print(names[names.index("孫悟空")]) #按值查找,index取下標 26 27 names.reverse() #反轉 28 print(names) 29 30 names.sort() #排序 31 print(names) 32 33 names2 = [1,2,3,4] 34 names.extend(names2) #擴展 35 print(names) 36 37 del names2 #刪除names2後不影響names 38 print("line38",names) 39 40 41 names4 = ["托塔天王",["玉皇大帝","王母娘娘"],"孫悟空","唐僧","白龍馬","孫悟空"] 42 names5=names4.copy() #列表中的列表復制方式為引用,names5[1]和names4[1]的值始終一致 43 names4[0]="沙悟凈" 44 names4[1][1]="如來佛祖" 45 print("names5",names5) 46 print("names4",names4)
三、字典常用方法
1 #!/usr/bin/env python 2 #created by Baird 3 4 #字典是無序的 5 info = { 6 ‘1001‘:‘張無忌‘, 7 ‘1002‘:‘張三豐‘, 8 ‘1003‘:‘張翠山‘, 9 ‘1004‘:‘楊逍‘ 10 } 11 12 print(info.get(‘1006‘)) #按key查找,失敗返回None 13 print(‘1003‘ in info) #按key 查找,返回bool 14 15 info[‘1005‘] = ‘白眉鷹王‘ #添加元素 16 print(info) 17 print(info.values()) #只打印值 18 19 del info[‘1005‘] #按key刪除 20 print(info) 21 22 info.setdefault(‘1001‘,‘趙敏‘) 23 print(info) 24 25 info.setdefault(‘1005‘,‘趙敏‘) #添加元素,同add 26 print(info) 27 28 info2={ 29 ‘1001‘:‘孫悟空‘, 30 ‘1007‘:‘唐僧‘ 31 } 32 info.update(info2) #以字典info2為base,更新字典info,key存在則修改值,不存在則增加鍵值對 33 print(info) 34 35 print(info.items()) #字典轉換成列表 36 37 c = dict.fromkeys([1,2,3],‘temp‘) #創建具有臨時值的字典,1、2、3為key,值均為temp 38 c[1] = ‘ball‘ 39 print(c) 40 41 c = dict.fromkeys([1,2,3],{‘name‘:‘Jack‘}) #創建具有臨時值的字典,三個key的值均為同一引用 42 c[1][‘name‘] = ‘Ross‘ 43 print(c)
四、集合基本操作
1 #!/usr/bin/env python 2 #created by Baird 3 4 list_1 = [1,2,3,4,5,6,7] 5 6 list_1 = set(list_1) #創建集合 7 8 print(list_1) #集合是無序的 9 print(type(list_1)) 10 11 list_2 = set([1,2,3]) 12 13 print(list_1.intersection(list_2)) #交集 相當於 print(list_1 & list_2) 14 print(list_1.union(list_2)) #並集 相當於 print(list_1 | list_2) 15 print(list_1.difference(list_2)) #相當於 print(list_1 - list_2) 16 print(list_1.issubset(list_2)) #子集判斷嗎,list1是否屬於list2 17 print(list_1.issuperset(list_2)) #父集判斷 18 print(list_1.symmetric_difference(list_2)) 19 # (list_1 & list_2) - (list_1 | list_2) 或 list_1 ^ list_2 20 21 print(list_1.isdisjoint(list_2)) #若無交集,則為True 22 23 list_1.add(10) #添加一個元素 24 print(list_1) 25 list_1.update([11,12,13]) #添加多個元素 26 print(list_1) 27 list_1.remove(13) #刪除一個元素 28 print(list_1) 29 list_1.discard(12) #元素存在則刪除,不存在則忽視 30 print(list_1) 31 32 if 11 in list_1: #元素存在判斷 33 print("Yes") 34 else: 35 print("No")
字符串、列表、字典和集合