史上最全Python知識點匯總續
〖 語法和語句 〗
賦值語句的形式
序列賦值 序列解包
print函數原型
if/else三元表達符
Python的while語句或者for語句可以帶else語句 當然也可以帶continue/break/pass語句
while a > 1: ......else: ......# else語句會在循環結束後執行,除非在循環中執行了break,同樣的還有for語句for i in range(5): ......else: ......
for循環的元組賦值
列表解析語法
生成器表達式
文檔字元串:出現在Module的開端以及其中函數或類的開端 使用三重引號字元串
"""module document"""def func(): """ function document """ print()class Employee: """ class document """ print()print(func.__doc__) # 輸出函數文檔字元串print(Employee.__doc__) # 輸出類的文檔字元串
命名慣例
"""以單一下劃線開頭的變數名(_X)不會被from module import*等語句導入前後有兩個下劃線的變數名(__X__)是系統定義的變數名,對解釋器有特殊意義以兩個下劃線開頭但不以下劃線結尾的變數名(__X)是類的本地(私有)變數"""
列表解析 in成員關係測試 map sorted zip enumerate內置函數等都使用了迭代協議
"first line" in open("test.txt") # in測試 返回True或Falselist(map(str.upper, open("t"))) # map內置函數sorted(iter([2, 5, 8, 3, 1])) # sorted內置函數list(zip([1, 2], [3, 4])) # zip內置函數 [(1, 3), (2, 4)]
del語句: 手動刪除某個變數
del X
獲取列表子列表的方法
小手動迭代:iter和next
L = [1, 2]I = iter(L) # I為L的迭代器I.next() # 返回1I.next() # 返回2I.next() # Error:StopIteration
Python中的可迭代對象
"""1.range迭代器2.map、zip和filter迭代器3.字典視圖迭代器:D.keys()), D.items()等4.文件類型"""
函數語法規則
函數相關的語句和表達式
Python函數變數名解析:LEGB原則
"""local(functin) --> encloseing function locals --> global(module) --> build-in(python)說明:以下邊的函數maker為例 則相對於action而言 X為Local N為Encloseing"""
嵌套函數舉例:工廠函數
嵌套函數舉例:lambda實例
nonlocal和global語句的區別
函數參數,不可變參數通過「值」傳遞,可變參數通過「引用」傳遞
可變參數匹配: * 和 **
函數調用時的參數解包: * 和 ** 分別解包元組和字典
函數屬性:(自己定義的)函數可以添加屬性
函數註解: 編寫在def頭部行 主要用於說明參數範圍、參數類型、返回值類型等
匿名函數:lambda
lambda函數與map filter reduce函數的結合
生成器函數:yield VS return
生成器表達式:小括弧進行列表解析
本地變數是靜態檢測的
函數的默認值是在函數定義的時候實例化的 而不是在調用的時候
※JetBrains殺入Python開發,發布全新機器學習Web方案!
※Python數據分析與挖掘實戰5-1代碼錯誤解決辦法
TAG:python |