0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python模塊的加載問題

麥辣雞腿堡 ? 來源:Python都知道 ? 作者:了不起 ? 2023-09-11 17:43 ? 次閱讀

模塊的加載問題

當(dāng)導(dǎo)入一個(gè)模塊時(shí), 模塊中的代碼都會(huì)被執(zhí)行. 如果再次導(dǎo)入這個(gè)模塊,則不會(huì)再次執(zhí)行 者為什么這么設(shè)計(jì)?因?yàn)?strong>導(dǎo)入模塊更多的時(shí)候需要的是定義模塊中的變量、函數(shù)、對(duì)象等. 這些并不需要反復(fù)定義和執(zhí)行.“只導(dǎo)入一次 import-only-once ”就成了一種優(yōu)化. 參考設(shè)計(jì)模式的單例模式思想核心: 一個(gè)模塊無論導(dǎo)入多少次,這個(gè)模塊在整個(gè)解釋器進(jìn)程內(nèi)有且僅有一個(gè)實(shí)例對(duì)象(單例)

重新加載有時(shí)候我們確實(shí)需要重新加載一個(gè)模塊,這時(shí)候可以使用:importlib.reload()方法

實(shí)操代碼

#mypy14_module_load.py

print("當(dāng)前模塊被加載了...")

#mypy14_test.py

importmypy14_module_load#不會(huì)再執(zhí)行test02模塊中的語句

importmypy14_module_load#會(huì)執(zhí)行test02模塊中的語句

print("####")

importimportlib

importlib.reload(mypy14_module_load)#有時(shí)候我們確實(shí)需要重新加載一個(gè)模塊,這時(shí)候可以使用:importlib.reload()方法:

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 模塊
    +關(guān)注

    關(guān)注

    7

    文章

    2613

    瀏覽量

    47012
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4671

    瀏覽量

    67767
  • python
    +關(guān)注

    關(guān)注

    53

    文章

    4753

    瀏覽量

    84078
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    動(dòng)態(tài)庫封裝成python模塊的方法

    之前的文章 將靜態(tài)庫封裝成 python 模塊中講解了如何將靜態(tài)庫封裝成 python 模塊,靜態(tài)庫封裝相對(duì)來說還是有點(diǎn)復(fù)雜,今天來介紹下動(dòng)態(tài)庫封裝成
    發(fā)表于 07-13 15:24 ?524次閱讀

    加載速度提升 15%,關(guān)于 Python 啟動(dòng)加速探索與實(shí)踐的解析 | 龍蜥技術(shù)

    Python加載有關(guān)。其中,CPU 時(shí)間中包加載占據(jù)了 30% 左右的時(shí)間;而 37% 的等待時(shí)間中,磁盤 IO 等花費(fèi)的時(shí)間也和包加載有較大的關(guān)聯(lián)。熟悉
    發(fā)表于 12-23 15:59

    Python的函數(shù)文件與模塊的程序說明

    “探索Python ” 這一系列的前幾篇文章已為Python 編程新手介紹了幾方面的主題, 包括變量、容器對(duì)象和復(fù)合語句。本文以這些概念為基礎(chǔ),構(gòu)造一個(gè)完整的Python 程序。引入了Pyth
    發(fā)表于 09-10 16:06 ?2次下載
    <b class='flag-5'>Python</b>的函數(shù)文件與<b class='flag-5'>模塊</b>的程序說明

    python包、模塊和庫是什么

    1. 模塊 以 .py 為后綴的文件,我們稱之為 模塊,英文名 Module。 模塊讓你能夠有邏輯地組織你的 Python 代碼段,把相關(guān)的代碼分配到一個(gè)
    的頭像 發(fā)表于 03-09 16:47 ?2237次閱讀

    Python-模塊與包

    模塊Python 程序架構(gòu)的一個(gè)核心概念
    的頭像 發(fā)表于 02-16 14:55 ?692次閱讀
    <b class='flag-5'>Python</b>-<b class='flag-5'>模塊</b>與包

    解析python模塊搜索路徑和別名as

    描述** python通過模塊搜索路徑找到模塊文件進(jìn)行導(dǎo)入。
    的頭像 發(fā)表于 02-21 10:53 ?673次閱讀

    python中間模塊重載介紹

    python通過reload重載模塊動(dòng)態(tài)更新最新代碼。 ## 1.1 reload
    的頭像 發(fā)表于 02-21 11:16 ?476次閱讀

    簡(jiǎn)述python模塊import和from及all

    python指定導(dǎo)入目錄路徑,稱為包導(dǎo)入。 通過import和from導(dǎo)入包模塊。 通過**all**指定導(dǎo)入的模塊和導(dǎo)入的模塊屬性。 ## 1.1
    的頭像 發(fā)表于 02-21 14:20 ?1153次閱讀

    淺析python模塊創(chuàng)建和from及import使用

    python模塊通過用python程序編寫的.py文件即可創(chuàng)建,通過from及import語句導(dǎo)入模塊來使用。
    的頭像 發(fā)表于 02-21 14:44 ?730次閱讀

    python常用的內(nèi)置函數(shù)和模塊

    python數(shù)字包含常用的內(nèi)置函數(shù)和模塊,比如pow()、abs()、floor()、int()等函數(shù),以及math、random等模塊。
    的頭像 發(fā)表于 03-10 10:10 ?835次閱讀

    介紹Python模塊的基礎(chǔ)知識(shí)

    Python是一種高級(jí)編程語言,擁有豐富的庫和模塊。模塊Python中一個(gè)獨(dú)立的、可重用的代碼單元,它包含了一組相關(guān)的函數(shù)、類和變量。
    的頭像 發(fā)表于 04-21 16:48 ?906次閱讀

    Python中telnetlib模塊的基本使用

    telnetlib 是 Python 標(biāo)準(zhǔn)庫中的一個(gè)模塊,它提供了 Telnet 協(xié)議的客戶端功能。使用 telnetlib 模塊,我們可以在 Python 中編寫腳本來自動(dòng)化 Tel
    的頭像 發(fā)表于 05-04 14:27 ?7412次閱讀

    Linux驅(qū)動(dòng)加載卸載模塊命令

    ); module_exit (my_exit); 加載卸載模塊命令 模塊加載 insmod :加載指定目錄下的一個(gè).ko文件到內(nèi)核。例如:
    的頭像 發(fā)表于 09-26 16:54 ?798次閱讀

    python如何導(dǎo)入模塊

    Python是一種強(qiáng)大的編程語言,它支持模塊化編程,使得開發(fā)者可以將代碼分解為可重用且獨(dú)立的模塊。模塊是一個(gè)包含函數(shù)、類和變量等定義的文件,我們可以使用import語句將這些
    的頭像 發(fā)表于 11-22 14:46 ?798次閱讀

    python訓(xùn)練出的模型怎么調(diào)用

    使用pickle模塊 pickle 是Python的一個(gè)內(nèi)置模塊,用于序列化和反序列化Python對(duì)象結(jié)構(gòu)。使用 pickle 可以方便地保存和
    的頭像 發(fā)表于 07-11 10:15 ?872次閱讀