最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python學(xué)習(xí)基礎(chǔ)之循環(huán)import及import過(guò)程

 更新時(shí)間:2018年04月22日 08:46:45   作者:絕世好阿貍  
python中的import語(yǔ)句是用來(lái)導(dǎo)入模塊的,下面這篇文章主要給大家介紹了關(guān)于python學(xué)習(xí)基礎(chǔ)之循環(huán)import及import過(guò)程的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。

import介紹

import語(yǔ)句作用就是用來(lái)導(dǎo)入模塊的,它可以出現(xiàn)在程序中的任何位置。

import語(yǔ)句語(yǔ)法

使用import語(yǔ)句導(dǎo)入模塊,import語(yǔ)句語(yǔ)法如下:

import module
關(guān)鍵字 模塊名

使用方法例如:

import math #入導(dǎo)math模塊
math.floor() #調(diào)用math模塊中的floor()函數(shù)

如果要同時(shí)導(dǎo)入多個(gè)模塊,只需要在模塊名之前用逗號(hào)進(jìn)行分隔:

import module1,module2,module3.......

同時(shí)導(dǎo)入多個(gè)模塊的方法,對(duì)于初學(xué)者來(lái)說(shuō)可讀性和可理解性不如第一種好。所以想要導(dǎo)入多個(gè)模塊時(shí),還是比較推薦用第一種方式,把每一個(gè)模塊都單獨(dú)進(jìn)行一次導(dǎo)入,可能會(huì)感覺(jué)操作起來(lái)麻煩一些,但便于理解。

引用

最近項(xiàng)目組用python,慢慢開(kāi)始學(xué)習(xí)了。第一天就遇到了import問(wèn)題。

python語(yǔ)言的import有兩種方法,一個(gè)是import 模塊名,一個(gè)是from 模塊名 import 函數(shù)或者類(lèi)或者變量。

直接import只能import模塊,不能import 模塊里面的內(nèi)容。使用內(nèi)容必須加上模塊名。

在import的時(shí)候,系統(tǒng)會(huì)把所有的加載的模塊載入內(nèi)存,并且放入一個(gè)map中,from A import B的過(guò)程是,看是否有A模塊在系統(tǒng)中加載,如果有則直接拿出來(lái),否則新建一個(gè),這時(shí)需要填充A模塊的內(nèi)容,就需要執(zhí)行A模塊的文件。一旦構(gòu)建好了A模塊,那么就可以從A里面取B了,如果沒(méi)有就報(bào)錯(cuò)。

上述邏輯是如果用A,A沒(méi)有載入,就執(zhí)行A,否則就直接返回A的函數(shù)或者變量。這個(gè)時(shí)候就有一個(gè)問(wèn)題,當(dāng)前腳本Main第一次執(zhí)行,需要執(zhí)行from A import ,發(fā)現(xiàn)沒(méi)有A,就新建一個(gè)A在內(nèi)存中,然后填充A模塊的信息,就會(huì)去執(zhí)行A,此時(shí),A里面要 from Main import D,那么因?yàn)镸ain已被執(zhí)行,就直接從內(nèi)存的map中取得Main的信息,不過(guò)此時(shí)Main的信息還沒(méi)有填充完,因?yàn)橹熬褪菫榱颂畛洳呸D(zhuǎn)到A的,這時(shí)從已有的空的Main中拿不到D,就會(huì)報(bào)錯(cuò),ImportError。

所以,項(xiàng)目中盡量不要循環(huán)import,很可能會(huì)產(chǎn)生這樣的錯(cuò)。那么一旦產(chǎn)生怎么解決?

可以把import語(yǔ)句盡可能往后放,比如放到文件最后,那么應(yīng)該是沒(méi)問(wèn)題的,因?yàn)閳?zhí)行到import時(shí),已經(jīng)確保了當(dāng)前的腳本的內(nèi)容已經(jīng)注冊(cè)到了內(nèi)存的map中。

當(dāng)然也可以放到函數(shù)的內(nèi)部,即其他模塊的調(diào)用處。

from lib import lib1 
 
def func1(): 
 print("main.func1") 
 lib1() 
 
 
def func2(): 
 print("main.func1") 
 
func1() 

main.py

from main import func2 
 
def lib1(): 
 func2() 
 print("lib.lib1") 
 
 
def lib2(): 
 func2() 

lib.py

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Python Celery異步任務(wù)隊(duì)列使用方法解析

    Python Celery異步任務(wù)隊(duì)列使用方法解析

    這篇文章主要介紹了Python Celery異步任務(wù)隊(duì)列使用方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Python 循環(huán)函數(shù)詳細(xì)介紹

    Python 循環(huán)函數(shù)詳細(xì)介紹

    循環(huán)用于重復(fù)執(zhí)行一些程序塊。從上一講的選擇結(jié)構(gòu),我們已經(jīng)看到了如何用縮進(jìn)來(lái)表示程序塊的隸屬關(guān)系。循環(huán)也會(huì)用到類(lèi)似的寫(xiě)法。感興趣得小伙伴請(qǐng)參考下面文字得具體內(nèi)容
    2021-09-09
  • 一文詳解Python中的時(shí)間和日期處理

    一文詳解Python中的時(shí)間和日期處理

    在Python開(kāi)發(fā)中,我們經(jīng)常需要處理日期和時(shí)間,Python提供了一些內(nèi)置模塊,如datetime、time和calendar,這些模塊讓我們能夠輕松地獲取、操作和格式化日期和時(shí)間,本文將介紹如何在Python中使用這些模塊進(jìn)行日期和時(shí)間的處理
    2023-06-06
  • 自定義Django默認(rèn)的sitemap站點(diǎn)地圖樣式

    自定義Django默認(rèn)的sitemap站點(diǎn)地圖樣式

    這篇文章主要介紹了自定義Django默認(rèn)的sitemap站點(diǎn)地圖樣式,通過(guò)代碼給大家介紹了使用Django的sitemap功能,代碼很簡(jiǎn)單非常不錯(cuò)對(duì)大家的工作或?qū)W習(xí)具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Python中最常用的操作列表的幾種方法歸納

    Python中最常用的操作列表的幾種方法歸納

    這篇文章主要介紹了Python中最常用的操作列表的幾種方法歸納,列表的方法是Python學(xué)習(xí)中最基本的知識(shí),需要的朋友可以參考下
    2015-04-04
  • 利用pytorch實(shí)現(xiàn)對(duì)CIFAR-10數(shù)據(jù)集的分類(lèi)

    利用pytorch實(shí)現(xiàn)對(duì)CIFAR-10數(shù)據(jù)集的分類(lèi)

    今天小編就為大家分享一篇利用pytorch實(shí)現(xiàn)對(duì)CIFAR-10數(shù)據(jù)集的分類(lèi),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • 利用python實(shí)現(xiàn)在微信群刷屏的方法

    利用python實(shí)現(xiàn)在微信群刷屏的方法

    今天小編就為大家分享一篇利用python實(shí)現(xiàn)在微信群刷屏的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • Python中使用動(dòng)態(tài)變量名的方法

    Python中使用動(dòng)態(tài)變量名的方法

    這篇文章主要介紹了Python中使用動(dòng)態(tài)變量名的方法,需要的朋友可以參考下
    2014-05-05
  • python實(shí)現(xiàn)對(duì)指定輸入的字符串逆序輸出的6種方法

    python實(shí)現(xiàn)對(duì)指定輸入的字符串逆序輸出的6種方法

    這篇文章主要介紹了python實(shí)現(xiàn)對(duì)指定輸入的字符串逆序輸出的6種方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • tensorflow中tf.slice和tf.gather切片函數(shù)的使用

    tensorflow中tf.slice和tf.gather切片函數(shù)的使用

    今天小編就為大家分享一篇tensorflow中tf.slice和tf.gather切片函數(shù)的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01

最新評(píng)論

益阳市| 岑溪市| 隆昌县| 琼结县| 新野县| 嘉黎县| 成安县| 乐都县| 松桃| 财经| 常宁市| 焦作市| 施甸县| 大英县| 江津市| 运城市| 祁阳县| 印江| 福建省| 伊吾县| 长沙市| 沅江市| 永康市| 阳朔县| 湟中县| 新野县| 桦川县| 环江| 于田县| 叶城县| 海安县| 元江| 涞源县| 舟曲县| 蓬安县| 抚远县| 宁波市| 合阳县| 油尖旺区| 城步| 泰安市|