一、字典類型
*)字典是python中唯一的映射類型 ,key-value(哈希表),字典對象是可變的,但key必須用不可變對象。
*)字典的建立和字典值得通路
##字典的内容在檢視時不能通過索引來進行檢視
*)内建方法:fromkeys
字典中的key有相同的value值,預設為None
<a href="https://s1.51cto.com/wyfs02/M00/9B/AA/wKiom1llwcqCzz9pAAAx6wT3QW8246.png" target="_blank"></a>
<a href="https://s4.51cto.com/wyfs02/M00/9B/A9/wKioL1llwcvxsryxAAAuxcRwfaI586.png" target="_blank"></a>
*)字典的循環周遊通路
*)字典中key-value的添加
dic[key] = value
##通過字典的添加發現,字典是無序的資料類型
*)字典的删除
**)根據key值删除字典的元素
**)随機删除字典元素,傳回(key,value)
**)删除字典中的所有元素
**)删除字典本身
*)字典的常用方法
**)dic.get()
如果key存在于字典中,傳回對應的value值
**)dic.keys()
傳回字典中的所有key值
**)字典内容的更新
**)檢查字典中是否存在某個key值
二、函數
*)定義函數
**)def關鍵字,依次寫出函數名、括号、括号中的參數和冒号:
**)在縮進塊中編寫函數體,函數的傳回值用return語句傳回。
def fun():
pass
return
*)調用函數
python内置了很多有用的函數,我們可以直接調用:
**)sum() ##求和内置函數
**)abs() ##求絕對值
**)cmp() ##比較函數
*)函數類型轉換
int(obj) ##将字元串轉為整型
float(obj) ##轉化為浮點型
str(obj) ##轉化為字元串型 *)什麼是函數名
**)函數名與變量名類似,其實就是指向一個函數對象的引用;
**)給這個函數起了一個 “别名”:函數名賦給一個變量
*)空函數
定義一個什麼也不做的空函數,可以用pass語句;
pass可以用來作占位符,還沒想好怎麼寫函數的代碼,就可以先放一個pass,整個代碼先運作起來
def fun()
pass
*)參數檢查
**)調用函數時,如果參數個數不對,python解釋器會自動檢查出來,并超出TypeError;
**)如果參數類型不對,python解釋器就無法幫我們檢查。
**)資料類型檢查可以用内置函數isinstance實作
*)函數傳回值
**)函數傳回值用return關鍵字;
**)傳回一個tuple可以省略括号;
**)python的函數傳回多值其實就是傳回一個tuple
**)函數執行完畢沒有return語句時,自動return None
*)函數參數
**)有多個參數時,變化大的放前面,變化小的放後面;
必選參數在前,預設參數在後
*)可變參數
可變參數就是傳入的參數個數是可變的,可以是1個,2個到任意個,也可以是0個
*args
*)關鍵字參數
**)關鍵字參數允許傳入0個或任意個含參數名的參數;
**)這些關鍵字參數在函數内部自動組裝為一個dict;
**)關鍵字參數**kwargs
三、函數的進階特性
*)疊代
可以通過for循環來周遊這個list或tuple,這種周遊我們稱之為疊代(iteration)
隻要是可疊代對象,無論有無下标,都可以疊代,比如dict就可以疊代
*)如何判斷對象是否可以疊代
利用collection子產品的iterable類型判斷
<a href="https://s3.51cto.com/wyfs02/M01/9B/AB/wKioL1lly2yQnZaeAAANnfS8A68549.png" target="_blank"></a>
<a href="https://s3.51cto.com/wyfs02/M02/9B/AB/wKioL1lly2zSLdVSAAAZenz-BjA313.png" target="_blank"></a>
*)利用python内置的枚舉方法enumerate,把一個list變成索引-元素對
*)for循環裡,同時引用兩個變量,并且疊代顯示
*)清單生成式
range子產品
清單生成式:
##循環太麻煩,而清單生成式則可以用一行語句代替循環生成上面的list
*)清單生成器
**)為什麼需要清單生成器:
通過清單生成式,我們可以直接建立一個清單,受到記憶體限制,清單容量肯定是有限的;
建立一個包含100萬個元素的清單,占用很大的 存儲空間;
**)生成器是什麼:
在循環過程中不斷推算出後續的元素,這樣就不必建立完整的list,進而節省大量的空間。在python中,這種一邊循環一邊計算的機制,稱為生成器
##使用g.next()方法依次讀取元素(麻煩)
##使用for循環(簡單快捷友善)
本文轉自 昭He淺墨 51CTO部落格,原文連結:http://blog.51cto.com/502703956/1946719,如需轉載請自行聯系原作者