1. 程式人生 > >風火程式設計--《python核心程式設計》讀書筆記(五)

風火程式設計--《python核心程式設計》讀書筆記(五)

##python核心程式設計–第二版

第七章

7.1 字典
快速構造字典

d = {}.fromkeys("123",1)

通過 in 判斷 key是否存在

if "1" in d:
    print("1 in d")

字典合併

# 把dict2合入dict1, 沒有返回值
dict1.update(dict2)

***有些時候,不同條件的判斷(elif)可以使用字典優化

7.6集合型別
集合方法

add()
remove()
update()
pop()
clear()

集合運算

# 集合沒有+運算
交&, 並|, 差 ^, 補-

set和frozenset混合操作時 結果型別與左側相同

第八章

8.10while/for–else
正常退出(不滿足迴圈條件)時執行else字句, break時不執行else
多條件判斷中使用any()和all()可以讓程式碼更加簡潔

第九章

9.3檔案內建方法
獲取當前path

import os
os.curdir

9.9持久化儲存模組

import shelve
# 當值為列表的時候, writeback=True宣告儲存對列表拷貝的修改
sh = shelve.open("xxx.dat", flag="c", writeback=True)
sh["鍵"] = 值

第十章

10.3 異常檢測和處理
try-except-else-finally
一個try可以有多個except,會逐個判斷
一個except可以捕捉多個異常型別,用元組包裹
e.class 檢視異常類
e.class.__name__檢視異常類的名字
e.class.__doc__檢視異常類的描述

10.7斷言
assert expression, “異常說明”

10.8標準異常
RefererError: 弱引用異常, 使用了被揮手的物件.
Deprecation: 被棄用特徵的警告

導致程式退出的異常可以通過sys模組獲取說明
sys.exc_info() # 返回一個異常資訊的3元組