久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質的職業(yè)教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > pythonimport是怎么實現(xiàn)的?

pythonimport是怎么實現(xiàn)的?

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-11 17:13:55 1699694035

基本概念:

模塊(module):其實就是一個py文件,里面定義了各種變量,函數(shù),類。

模塊除了內建模塊(可以用過dir(__builtins__)查看有哪些內建函數(shù)),就是非內建模塊,這一部分模塊就需要用import導入。非內建模塊經(jīng)常需要按照第三方庫,一般第三方模塊在"安裝路徑\Python\Python35\Lib\site-packages"目錄下。

包(package):一個有層次結構的文件目錄,里面包含了模塊和一些子包,要求包中必須帶有一個__init__.py文件。

導入方法:

importmodule_name

frommodule_nameimportmodule_element

不難理解,該過程把module_name.py文件的全部內容加載到內存,把變量類型為’module‘賦值給當前模塊的同名變量。

在導入模塊時。模塊所在文件夾將自動生成一個對應的__pycache__\module_name.cpython-36.pyc文件

怎么加載?——加載方式和用法

方式:

1.importpackage

讀這個包的__init__.py,也就是說導入包的本質是執(zhí)行包下面的__init__.py文件,執(zhí)行結束后會包名的目錄下生成一個"__pycache__/__init__.cpython-36.pyc"文件。

2.importmodule

讀整個模塊的內容

3.importpackage1.package2.package3.module4

package讀取__init__.py,module讀取整個模塊內容,按順序讀

注意:因為package是讀取__init__.py,所以調用的時候必須在__init__.py有引用的東西才能調用,否則會報錯。

從哪里加載?

對于python來說,所有被加載到內存的模塊都是放在sys.modules里面,所以執(zhí)行import時會首先去該列表中查詢是否已添加。如果已經(jīng)在sys.modules中,那就簡單了,只需要將該module的name添加到我們正在調用該module的本地空間中。如果還沒有放在sys.modules中,就需要在sys.path所有路徑的目錄中去按順序查找該模塊的文件,這些文件一般后綴為".py"、".pyo"、".pyc"、".pyd"、".dll",找到這些模塊后就可以將這些模塊添加到sys.modules中,再將modulename導入到本地。

以上內容為大家介紹了Python培訓之import是怎么實現(xiàn)的?,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。

tags: python培訓
聲明:本站稿件版權均屬千鋒教育所有,未經(jīng)許可不得擅自轉載。
10年以上業(yè)內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT