本文實例講述了Python使用import導入本地腳本及導入模塊的技巧。分享給大家供大家參考,具體如下:
導入本地腳本
import 如果你要導入的 Python 腳本與當前腳本位于同一個目錄下,只需輸入 import,然后是文件名,無需擴展名 .py。 偽代碼如下:
import useful_functions useful_functions.add_five([1, 2, 3, 4])
我們可以為導入模塊添加別名,以使用不同的名稱引用它。
import useful_functions as uf uf.add_five([1, 2, 3, 4])
使用 if main 塊
為了避免運行從其他腳本中作為模塊導入的腳本中的可執行語句,將這些行包含在
if __name__ == "__main__"
塊中?;蛘?,將它們包含在函數
main()
中并在 if main 塊中調用該函數。
每當我們運行此類腳本時,Python 實際上會為所有模塊設置一個特殊的內置變量
__name__
。當我們運行腳本時,Python 會將此模塊識別為主程序,并將此模塊的
__name__
變量設為字符串 “main”。對于該腳本中導入的任何模塊,這個內置
__name__
變量會設為該模塊的名稱。因此,條件
if __name__ == "__main__"
會檢查該模塊是否為主程序。
在同一目錄下創建如下兩個腳本文件,并在終端里運行這些腳本!實驗 if main 塊并訪問導入模塊中的對象!
demo.py 文件
# demo.py import useful_functions as uf scores = [88, 92, 79, 93, 85] mean = uf.mean(scores) curved = uf.add_five(scores) mean_c = uf.mean(curved) print("Scores:", scores) print("Original Mean:", mean, " New Mean:", mean_c) print(__name__) print(uf.__name__)
useful_functions.py文件
# useful_functions.py def mean(num_list): return sum(num_list) / len(num_list) def add_five(num_list): return [n + 5 for n in num_list] def main(): print("Testing mean function") n_list = [34, 44, 23, 46, 12, 24] correct_mean = 30.5 assert(mean(n_list) == correct_mean) print("Testing add_five function") correct_list = [39, 49, 28, 51, 17, 29] assert(add_five(n_list) == correct_list) print("All tests passed!") if __name__ == '__main__': main()
如果運行
$ python demo.py
,那么有如下輸出結果:
Scores: [88, 92, 79, 93, 85]
Original Mean: 87.4? New Mean: 92.4
__main__
useful_functions
如果運行
$ python useful_functions.py
,那么有如下輸出結果:
Testing mean function
Testing add_five function
All tests passed!
import 導入模塊的技巧
要從模塊中導入單個函數或類:
from module_name import object_name
要從模塊中導入多個單個對象:
from module_name import first_object, second_object
要重命名模塊:
import module_name as new_name
要從模塊中導入對象并重命名:
from module_name import object_name as new_name
要從模塊中單個地導入所有對象(請勿這么做):
from module_name import *
如果你真的想使用模塊中的所有對象,請使用標準導入 module_name 語句并使用點記法訪問每個對象
import module_name
為了更好地管理代碼,Standard 標準庫中的模塊被拆分成了子模塊并包含在軟件包中。軟件包是一個包含子模塊的模塊。子模塊使用普通的點記法指定。子模塊的指定方式是軟件包名稱、點,然后是子模塊名稱。你可以如下所示地導入子模塊
import package_name.submodule_name
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python函數使用技巧總結》、《Python面向對象程序設計入門與進階教程》、《Python數據結構與算法教程》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結》及《Python入門與進階經典教程》
希望本文所述對大家Python程序設計有所幫助。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
