1. 程式人生 > 實用技巧 >python中字串列表字典常用方法

python中字串列表字典常用方法

[toc]

1.1 列表常用方法

#1. append 用於在列表末尾追加新的物件
a = [1, 2, 3] 
a.append(4)                              # the result : [1, 2, 3, 4]

# 2. count方法統計某個元素在列表中出現的次數
a = ['aa','bb','cc','aa','aa']
print(a.count('aa'))                 #the result : 3

# 3. extend 方法可以在列表的末尾一次性追加另一個序列中的多個值
a = [1,2,3]
b = [4,5,6]
a.extend(b)                          
#the result :[1, 2, 3, 4, 5, 6] # 4. index 函式用於從列表中找出某個值第一個匹配項的索引位置 a = [1,2,3,1] print(a.index(1)) #the result : 0 # 5. insert 方法用於將物件插入到列表元素中 a = [1,2,3] a.insert(0,'aa') #the result : ['aa', 1, 2, 3] # 6. pop 方法會移除列表中的一個元素(預設是最後一個), 並且返回該元素的值 a = [1,2,3] a.pop()
#the result : [1, 2] a.pop(0) # 指定下標刪除最後剩下[2] # 7. remove 方法用於移除列表中某個值得第一個匹配項 a = ['aa','bb','cc','aa'] a.remove('aa') #the result : ['bb', 'cc', 'aa'] # 8. reverse 方法將列表中得元素反向存放 a = ['a','b','c'] a.reverse() #the result : ['c', 'b', 'a']
# 9. sort 方法用於在原位置對列表進行排序,意味著改變原來的列表,讓其中的元素按照一定順序返回 a = [3,2,1] a.sort() #the result :[1, 2, 3] # 10. enumrate 接收兩個引數,第一個為列表,第二個為有序編號(預設值為0) # 同時需要兩個值來接收返回資料k=索引 v=值(如果只給定了一個值則變成元組形式包裹得資料(3, 11)(11, 'aa')) li = [11, 22, 33, 11, 22, 3311, 22, 33, 'aa', 'bb'] for k, v in enumerate(li, 3): print(k, v)

1.2 字串常用方法

# 1. find 方法可以在一個較長的字串中查詢子串,它返回子串所在位置的最左端索引,如果沒有找到則返回-1
a = 'abcdefghijk'
print(a.find('abc'))                                  #the result : 0
print(a.find('abc',10,100))                           #the result : 11  指定查詢的起始和結束查詢位置

# 2. join 方法是非常重要的字串方法, 它是split方法的逆方法,用來連線序列中的元素,並返回需要背連線的元素都必須是字串。
a = ['1','2','3']
print('+'.join(a))                                    #the result : 1+2+3、

# 3. split 方法,是一個非常重要的字串,它是join的逆方法,用來將字串分割成序列
print('1+2+3+4'.split('+'))                          #the result : ['1', '2', '3', '4']

# 4. strip 方法返回去除收尾空格(不包括內部) 的字串
print("   test   test    ".strip())                  #the result :“test   test”

# 5. replace 方法返回某字串所有匹配項均被替換之後得到字串
print("This is a test".replace('is','is_test'))     #the result : This_test is_test a test

1.3 字典常用方法

# 1.clear 方法清除字典中所有的項,這是一個原地操作,所以無返回值(或者說返回None)
d = {'name':"tom"}
d.clear()
print(d)                                         #the result : {}

# 2. fromkevs 方法使用給定的鍵建立新的字典,每個鍵都對應一個預設的值None
print({}.fromkeys(['name','age']))              #the result : {'age': None, 'name': None}

# 3. get 方法是個更寬鬆的訪問字典項的方法, 如果檢視訪問字典中不存在的項時不會報錯僅會 返回: None
d = {'Tom':8777,'Jack':8888,'Fly':6666}
print(d.get('Tom'))                              #the result :     8777
print(d.get('not_exist'))                       #the result :     None

# 4.for 迴圈字典的三種方法
d = {'Tom':8777,'Jack':8888,'Fly':6666}
for k,v in d.items():
    print(k,v)
for k in d.values():
    print(k)
for k in d.keys():
    print(k)

# 5. pop 方法用於獲得對應與給定鍵的值, 然後將這個“鍵-值” 對從字典中移除
d = {'Tom':8777,'Jack':8888,'Fly':6666}
v = d.pop('Tom')
print(v)                    #8777

# 6. setdefault 方法在某種程度上類似於get方法,能夠獲得與給定鍵相關聯的值,除此之外, setdefault 還能在字典中不含有給定鍵的情況下設定相應的鍵值
d = {'Tom':8777,'Jack':8888,'Fly':6666}
d.setdefault('Tom')                           #the result : 8777
print(d.setdefault('Test'))                  #the result : None
print(d)                                      #{'Fly': 6666, 'Jack': 8888, 'Tom': 8777, 'Test': None}

# 7. update 方法可以利用一個字典更新另一個字典,提供的字典中的項會被新增到舊的字典中, 如有相同的鍵則會被覆蓋
d = {'Tom':8777,'Jack':8888,'Fly':6666}
a = {'Tom':110,'Test':119}
d.update(a)
print(d)                                       #the result :{'Fly': 6666,'Test': 119, 'Jack': 8888, 'Tom': 110}

# 8. 將兩個列表組合成字典
keys = ['a', 'b']
values = [1, 2]
print(dict(zip(keys,values)))                     # {'a': 1, 'b': 2}

1.4 集合常用方法

list_1 = [1,2,3,4,5,1,2]
#1、去重(去除list_1中重複元素1,2)
list_1 = set(list_1)                                    #去重: {1, 2, 3, 4, 5}
print(list_1)
list_2 = set([4,5,6,7,8])

#2、交集(在list_1和list_2中都有的元素4,5)
print(list_1.intersection(list_2))                      #交集: {4, 5}

#3、並集(在list_1和list_2中的元素全部打印出來,重複元素僅列印一次)
print(list_1.union(list_2))                             #並集: {1, 2, 3, 4, 5, 6, 7, 8}

#4、差集
print(list_1.difference(list_2))                        #差集:在list_1中有在list_2中沒有:   {1, 2, 3}
print(list_2.difference(list_1))                        #差集:在list_1中有在list_2中沒有:   {8, 6, 7}