極簡python代碼收集,實戰小項目,不斷擼碼,以防遺忘。持續更新:
1,檢測列表是否有重復元素:
1 # !usr/bin/env python3 2 # *-* coding=utf-8 *-* 3 4 def check_list_unique(lst): 5 return len(lst) == len(set(lst)) #返回lst長度和集合lst的長度,如果相等,則證明沒有重復元素,如果不相等,就有重復元素 6 7 8 x = [1,1,2,2,3,2,3,4,5,6] 9 y = [1,2,3,4,5] 10 11 print(len(x)) #10 12 print(len(set(x))) #6 13 print(check_list_unique(x)) #False 14 print(check_list_unique(y)) #True 15 16 print(type(x),type(y)) 17 18 19 '''此處是廢話,用以加強碼夫破石對list和set這兩種數據類型 20 aset = {1,2,3,4,5} #集合,大括號,類似字典的語法 21 alst = list(aset) #集合轉列表 22 blst = ['a','b','c','d','e'] #列表 23 bset = set(blst) #列表轉集合 24 print(type(aset),type(alst),type(blst),type(bset)) #輸出:<class 'set'> <class 'list'> <class 'list'> <class 'set'> 25 26 '''
這里的set()有人說是函數,python的說法,應該叫集合。如,aset = {1,2,3,4,5},將其轉化為列表的語法為alst = list(aset);blst = ['a','b','c','d','e'],將其轉化為集合的語法為bset = set(blst)。回到aset,alst,blst,bset,用print(type(aset),type(alst),type(blst),type(bset)),結果是:<class 'set'> <class 'list'> <class 'list'> <class 'set'>;再打印print(type(check_list_unique)),結果:<class 'function'>,很明顯是函數。所以,set()不是函數,而應該叫集合。