排序
data.sort()覆蓋原有列表#預設是升序(可以傳入引數reverse=Ture改成降序)
sorted(data)建立一個列表
列表生成式
例如:
mins=[1,2,3]
secs=[m*60 for m in mins]
dict的key必須是不可變物件
重複元素在set中自動被過濾
通過add(key)方法可以新增元素到set中,可以重複新增,但不會有效果
通過remove(key)方法可以刪除元素
可變物件與不可變物件
例如:
可變:list
不可變:str,dict
原來函式返回值是一個tuple!
預設引數可以簡化函式的呼叫。設定預設引數時,有幾點要注意:
一是必選引數在前,預設引數在後,否則Python的直譯器會報錯(思考一下為什麼預設引數不能放在必選引數前面);
二是如何設定預設引數。
當函式有多個引數時,把變化大的引數放前面,變化小的引數放後面。變化小的引數就可以作為預設引數。
定義預設引數要牢記一點:預設引數必須指向不變物件!
可變引數:在自定義的函式引數前加*,可變引數就是傳入的引數個數是可變的,可以是1個、2個到任意個,還可以是0個
Python允許你在list或tuple前面加一個*號,把list或tuple的元素變成可變引數傳進去
關鍵字引數:
關鍵字引數允許你傳入0個或任意個含引數名的引數,這些關鍵字引數在函式內部自動組裝為一個dict
例如:
def person(name, age, **kw):
限制關鍵字引數的名字:
命名關鍵字引數需要一個特殊分隔符*,*後面的引數被視為命名關鍵字引數 例如: def person(name, age, *args, city, job): !!!在Python中定義函式,可以用必選引數、預設引數、可變引數、關鍵字引數和命名關鍵字引數,這5種引數都可以組合使用。但是請注意,引數定義的順序必須是:必選引數、預設引數、可變引數、命名關鍵字引數和關鍵字引數。
for迴圈其實可以同時使用兩個甚至多個變數,比如dict的items()可以同時迭代key和value