一 模塊api
1spa
# 模塊總結
# 能不能導入模塊 : 用sys.path查看
# 導入模塊的順序 : 內置 擴展 自定義
# 導入模塊 : 至關於執行了這個模塊,文件中的名字會被存儲在一塊獨立的內存空間中
# import
# 在全局建立了一個模塊名,指向屬於這個模塊的命名空間
# 空間裏存儲了全部文件中的名字
# 起別名 import ... as ..
# 不推薦一行導入多個模塊
# from import
# import後面的名字會出如今全局 ,至關於對獨立命名空間中的一個引用
# from import 也支持 as語句 也支持 導入多個名字
# from import * 至關於導入全部名字,*和被導入模塊__all__是互相影響的
2 絕對導入和相對導入
在glance同級目錄下能夠導入下面的命令:
1 import glance #絕對導入,其他的在init文件裏面實現 2 #在glace裏面的init文件裏寫的:from glance import api 3 #在api裏面的init文件裏寫的:from glance.api import policy 4 glance.api.policy.get() 5 6 7 相對導入 8 9 import glance 10 #在glace裏面的init文件裏寫的:from . import api 11 #在api裏面的init文件裏寫的:from .import policy 12 glance.api.policy.get()
二 異常處理
1 #多分枝 2 # s1 = 'hello' 3 # try: 4 # int(s1) 5 # except IndexError as e: 6 # print(e) 7 # except KeyError as e: 8 # print(e) 9 # except ValueError as e: 10 # print(e)
1 #萬能異常 2 # 3 # # s1 = 'hello' 4 # try: 5 # int(s1) 6 # except Exception as e: 7 # print(e)
1 #經常使用的處理異常結構 2 try: 3 pass #可能有問題的代碼 4 except ValueError: # 能預料到的錯誤 5 pass 6 except Exception as e:print(e) # 能處理錯有的異常 7 else:pass # try中的代碼沒有錯誤的時候執行 8 finally:pass #不管如何都執行
#主動觸發異常 # try: # raise TypeError('類型錯誤') # except Exception as e: # print(e)
1 #斷言 assert 2 assert 1==1 3 print('ok') 4 # assert 1==2 5 # print('error')