中以什麼開頭僅可註釋單行_Python基礎 | 0x5 註釋與模組
阿新 • • 發佈:2021-01-22
技術標籤:中以什麼開頭僅可註釋單行
註釋
註釋是一段「解釋性」文字,程式執行時,會跳過不做處理,一般是對程式碼的解釋或提示,以此提高程式碼的可讀性。寫註釋既方便了別人閱讀程式碼,也方便自己日後回顧,而不用苦思冥想當初寫這段程式碼的目的。當然註釋也不是寫的越多越好,應儘量避免沒用的註釋或寫過多的廢話。
Python中提供了兩種註釋方式:「 單行註釋 」和「 多行註釋 」,單行註釋通過 # 進行標識,多行註釋則通過 兩個三引號 來標識,程式碼示例如下:# 這是一個單行註釋'''
這是一個多行註釋
'''
模組
// 模組的基本使用//
模組其實就是一個Python檔案,以 .py 結尾,包含了Python定義和宣告。 舉個簡單例子,你可以把常用的程式碼塊抽取出來# 匯入整個模組importsys# 匯入模組中的需要用到的部分fromsys importargv# 多個的時候可以用逗號隔開fromurllib.error importURLError, HTTPError# 匯入模組中所有不是以下劃線開頭的名字,不建議這樣做,如果同名會覆蓋# 定義過的名字;如果你硬想用這種匯入方式,可以新增__all__成員來進行約束# 比如:__all__ = ['a','b']fromsys import*
另外,在匯入自己的模組時,可能遇到這個問題:
寫在模組裡的測試程式碼都執行了if__name__ == '__main__':
test()
// 重複匯入一個模組多次會怎樣//
答:第一次匯入後就將模組名載入到記憶體中,後續的import只是對已載入到記憶體中的 模組物件增加一次引用, 不會重新執行模組裡的語句 。// 模組的搜尋路徑與順序//
答:可以通過列印 sys.path 來檢視模組的搜尋路徑,比如我的電腦:[
'/Users/jay/Project/Python/Book/Chapter 6',
'/Users/jay/Project/Python/Book',
'/Library/Frameworks/Python.framework/Versions/3.6/lib/python36.zip',
'/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6',
'/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload',
'/Users/jay/Library/Python/3.6/lib/python/site-packages',
'/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages'
]
從上不難看出Python中 模組的搜尋順序:
程式所在目錄
→
標準安裝目錄
→
標準庫安裝目錄
→
Python環境變數所包含的目錄
所以,如果自定義的模組與內建模組重名的話,會呼叫自定義模組而非內建的模組,因此在命名模組時應儘量
避免重名
。如果硬是要同名且兩個模組都用到,可以使用
完整路徑引入
,並使用
as關鍵字
為模組
設定別名
。
還有,如果你的模組都不在這些搜尋路徑裡的話,可以通過呼叫sys.path.append("路徑") 臨時把路徑新增到搜尋路徑中。
// __init__.py檔案是做什麼的//
答:標識檔案所在的目錄是一個python的模組包(package),一般是空檔案,當然你也可以加點東西來控制包的匯入行為,直接在__init__.py 檔案中批量匯入所需模組,而不用一個個匯入,除此之外,還可以將一些初始化程式碼放入其中,示例如下:# xxx包裡的__init__.pyimportaimportbimportc# 呼叫這個模組的py檔案importxxx
print(xxx.a,xxx.b,xxx.c)# 還可以利用上面講到的__all__變數來簡化下:# xxx包裡的__init__.py
__all__ = ['a','b,'c']
# 呼叫這個模組的py檔案
from xxx import *
還可以通過相對匯入的方式匯入模組,示例如下:
import.a importA # 點號表示使用當前路徑的a模組import..b importB # 兩個點號表示訪問上層的父類
// 模組如何遷移到新的環境//
有時我們寫的模組或者程式碼需要遷移到另一個裝置上去執行,而你的指令碼可能用到了一些依賴模組,如果pip命令一個個裝顯得有些繁瑣,可以通過「pipreqs」模組來完成。 先通過 pip installpipreqs 安裝模組,接著終端cd到專案路徑,鍵入 pipreqs 匯出檔案的存放路徑 ,即可匯出一份 requirements.txt 的依賴檔案,檔案內容就是專案所依賴的模組。把檔案複製到新的裝置上,鍵入 pip install -r requirements.txt 即可自動下載安裝用到的模組。 另外,如果是想把電腦裡Python環境中 所有的模組 遷移到另一臺電腦,可使用命令匯出依賴檔案 pip freeze > requirement.txt ,安裝方法同pipreqs。// 模組的過載 //
上面說了重複匯入模組,只是新增一個引用,而不會重新匯入。有時可能需要在同一個會話中去更新模組,可以通過 imp標準庫中的reload函式 來完成。fromimp importreload
reload(模組名)