中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python的模塊和包如何導入

發布時間:2022-05-18 11:44:43 來源:億速云 閱讀:146 作者:iii 欄目:大數據

這篇文章主要介紹了python的模塊和包如何導入的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇python的模塊和包如何導入文章都會有所收獲,下面我們一起來看看吧。

python 模塊

1. 導入模塊

  • 在Python中一個py文件就是一個模塊,要想創建模塊,實際上就是創建一個python文件

    注意:模塊名要符號標識符的規范

  • 在一個模塊中引入外部模塊

    ① import 模塊名 (模塊名,就是python文件的名字,注意不要py)

    ② import 模塊名 as 模塊別名

  • 可以引入同一個模塊多次,但是模塊的實例只會創建一個

  • import可以在程序的任意位置調用,但是一般情況下,import語句都會統一寫在程序的開頭

  • 在每一個模塊內部都有一個__ name __ 屬性,通過這個屬性可以獲取到模塊的名字

  • __ name __ 屬性值為 __ main __ 的模塊是主模塊,一個程序中只會有一個主模塊,主模塊就是我們直接通過 python 執行的模塊,執行哪一個文件,哪一個文件就是主模塊。

import test_module as test 

print(test.__name__)
print(__name__)

2. 引入模塊中的內容

# import m
# 訪問模塊中的變量:模塊名.變量名

# 也可以只引入模塊中的部分內容,這樣就可以直接使用變量名,而不需要使用模塊名來訪問變量
# 語法 from 模塊名 import 變量,變量....

# from m import * 
# 引入到模塊中所有內容,一般不會使用

# 也可以為引入的變量使用別名,這樣可以避免有多個模塊有相同的變量名造成沖突。
# 語法:from 模塊名 import 變量 as 別名

3. 模塊私有變量

  • 使用下劃線 _屬性名,當通過 from m import * 引入所有變量時,不會將帶有下劃線的變量引入。

  • 注意的是,通過 import m 導入模塊時,仍然可以通過 m._屬性名 來訪問

4. 導入模塊跳過可執行代碼

當引入其他模塊時,其他模塊里面可能會有一些可執行代碼,這樣在導入時會執行這些模塊里的代碼,我們想讓這些代碼只有在該模塊作為主模塊時才執行

# 在模塊的可執行代碼前面添加語句
# 編寫測試代碼,這部分代碼,只要當當前文件作為主模塊的時候才需要執行
# 而當模塊被其他模塊引入時,不需要執行的,此時我們就必須要檢查當前模塊是否是主模塊 

if __name__ == '__main__':
    pass

5. package

  • 包也是一個模塊,當我們模塊中代碼過多時,或者一個模塊需要被分解為多個模塊時,這時就需要使用到包

  • 普通的模塊就是一個py文件,而包是一個文件夾 包中必須要一個一個 __ init __.py 這個文件,這個文件中可以包含有包中的主要內容

# 我們可以在包里面的__init__.py文件中定義變量或者函數,然后將包作為模塊導入,這樣就可以訪問到這些變量
import package_name

# 包里面可以包含其他模塊,使用模塊里面的變量時,必須使用全路徑名:package_name.module_name.屬性名
import package_name.module_name
    
# 通過這種方式導入時,只需要寫模塊名就可以,不需要包名
from   package_name import module_name
  • __ pycache __ 是模塊的緩存文件,在編譯后會在包下面有一個緩存文件

    py代碼在執行前,需要被解析器先轉換為機器碼,然后再執行,所以我們在使用模塊(包)時,也需要將模塊的代碼先轉換為機器碼然后再交由計算機執行,而為了提高程序運行的性能,python會在編譯過一次以后,將代碼保存到一個緩存文件中,這樣在下次加載這個模塊(包)時,就可以不再重新編譯而是直接加載緩存中編譯好的代碼即可

sys標準庫

import sys
import pprint

# 獲取執行代碼時,命令行中所包含的參數,該屬性是一個列表,列表中保存了當前命令的所有參數
sys.argv
print(sys.argv)

# 獲取當前程序中引入的所有模塊,modules是一個字典,字典的key是模塊的名字,字典的value是模塊對象
sys.modules

#pprint 模塊它給我們提供了一個方法 pprint() 該方法可以用來對打印的數據做簡單的格式化
pprint.pprint(sys.modules)

#他是一個列表,列表中保存的是模塊的搜索路徑
sys.path

# 函數用來退出程序
sys.exit()
sys.exit('程序出現異常,結束!')

導入指定目錄下模塊

from  sys  import path

# 導入sys模塊下的path變量,這是一個list,添加模塊的搜索路徑
path.append(r"E:\\")

導入模塊中的變量
from  test0  import   k
 
print(k)

關于“python的模塊和包如何導入”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“python的模塊和包如何導入”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

双桥区| 砀山县| 克拉玛依市| 丰原市| 如皋市| 梨树县| 武川县| 榆中县| 南投市| 乐平市| 昌平区| 阿坝县| 宿迁市| 扎囊县| 邹平县| 江城| 临泉县| 蓬溪县| 霍邱县| 大冶市| 自治县| 丹阳市| 东海县| 永康市| 封丘县| 北碚区| 兴国县| 容城县| 承德县| 礼泉县| 龙里县| 赤壁市| 安泽县| 滦平县| 连州市| 宜都市| 洪洞县| 永州市| 伊金霍洛旗| 墨脱县| 桦川县|