這篇文章為大家?guī)?lái)Python用import導(dǎo)入本地腳本和模塊的方法。大部分知識(shí)點(diǎn)都是大家經(jīng)常用到的,為此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。
成都創(chuàng)新互聯(lián)專(zhuān)注為客戶(hù)提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、云城網(wǎng)絡(luò)推廣、微信小程序定制開(kāi)發(fā)、云城網(wǎng)絡(luò)營(yíng)銷(xiāo)、云城企業(yè)策劃、云城品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪(fǎng)、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供云城建站搭建服務(wù),24小時(shí)服務(wù)熱線(xiàn):13518219792,官方網(wǎng)址:chinadenli.net
導(dǎo)入本地腳本
import 如果你要導(dǎo)入的 Python 腳本與當(dāng)前腳本位于同一個(gè)目錄下,只需輸入 import,然后是文件名,無(wú)需擴(kuò)展名 .py。 偽代碼如下:
import useful_functions
useful_functions.add_five([1, 2, 3, 4])
我們可以為導(dǎo)入模塊添加別名,以使用不同的名稱(chēng)引用它。
import useful_functions as uf
uf.add_five([1, 2, 3, 4])
使用 if main 塊
為了避免運(yùn)行從其他腳本中作為模塊導(dǎo)入的腳本中的可執(zhí)行語(yǔ)句,將這些行包含在 if name == “main” 塊中。或者,將它們包含在函數(shù) main() 中并在 if main 塊中調(diào)用該函數(shù)。
每當(dāng)我們運(yùn)行此類(lèi)腳本時(shí),Python 實(shí)際上會(huì)為所有模塊設(shè)置一個(gè)特殊的內(nèi)置變量 name。當(dāng)我們運(yùn)行腳本時(shí),Python 會(huì)將此模塊識(shí)別為主程序,并將此模塊的 name 變量設(shè)為字符串 “main”。對(duì)于該腳本中導(dǎo)入的任何模塊,這個(gè)內(nèi)置 name 變量會(huì)設(shè)為該模塊的名稱(chēng)。因此,條件 if name == "main"會(huì)檢查該模塊是否為主程序。
在同一目錄下創(chuàng)建如下兩個(gè)腳本文件,并在終端里運(yùn)行這些腳本!實(shí)驗(yàn) if main 塊并訪(fǎng)問(wèn)導(dǎo)入模塊中的對(duì)象!
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__)
使用 if main 塊
為了避免運(yùn)行從其他腳本中作為模塊導(dǎo)入的腳本中的可執(zhí)行語(yǔ)句,將這些行包含在 if name == “main” 塊中。或者,將它們包含在函數(shù) main() 中并在 if main 塊中調(diào)用該函數(shù)。
每當(dāng)我們運(yùn)行此類(lèi)腳本時(shí),Python 實(shí)際上會(huì)為所有模塊設(shè)置一個(gè)特殊的內(nèi)置變量 name。當(dāng)我們運(yùn)行腳本時(shí),Python 會(huì)將此模塊識(shí)別為主程序,并將此模塊的 name 變量設(shè)為字符串 “main”。對(duì)于該腳本中導(dǎo)入的任何模塊,這個(gè)內(nèi)置 name 變量會(huì)設(shè)為該模塊的名稱(chēng)。因此,條件 if name == "main"會(huì)檢查該模塊是否為主程序。
在同一目錄下創(chuàng)建如下兩個(gè)腳本文件,并在終端里運(yùn)行這些腳本!實(shí)驗(yàn) if main 塊并訪(fǎng)問(wèn)導(dǎo)入模塊中的對(duì)象!
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()
如果運(yùn)行 $ python demo.py,那么有如下輸出結(jié)果:

如果運(yùn)行 $ python useful_functions.py,那么有如下輸出結(jié)果:

import 導(dǎo)入模塊的技巧
要從模塊中導(dǎo)入單個(gè)函數(shù)或類(lèi):
from module_name import object_name
要從模塊中導(dǎo)入多個(gè)單個(gè)對(duì)象:
from module_name import first_object, second_object
要重命名模塊:
import module_name as new_name
要從模塊中導(dǎo)入對(duì)象并重命名:
from module_name import object_name as new_name
要從模塊中單個(gè)地導(dǎo)入所有對(duì)象(請(qǐng)勿這么做):
from module_name import *
如果你真的想使用模塊中的所有對(duì)象,請(qǐng)使用標(biāo)準(zhǔn)導(dǎo)入 module_name 語(yǔ)句并使用點(diǎn)記法訪(fǎng)問(wèn)每個(gè)對(duì)象
import module_name
為了更好地管理代碼,Standard 標(biāo)準(zhǔn)庫(kù)中的模塊被拆分成了子模塊并包含在軟件包中。軟件包是一個(gè)包含子模塊的模塊。子模塊使用普通的點(diǎn)記法指定。子模塊的指定方式是軟件包名稱(chēng)、點(diǎn),然后是子模塊名稱(chēng)。你可以如下所示地導(dǎo)入子模塊
import package_name.submodule_name
以上就是Python用import導(dǎo)入本地腳本和模塊的方法介紹,詳細(xì)使用情況還得要大家自己使用過(guò)才能知道具體要領(lǐng)。如果想閱讀更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)站名稱(chēng):Python用import導(dǎo)入本地腳本和模塊的方法
標(biāo)題路徑:http://chinadenli.net/article32/jggssc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、做網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站建設(shè)、App開(kāi)發(fā)、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)