Python模組和包

2021-10-05 10:26:58 字數 3812 閱讀 8930

模組是 python 程式架構的乙個核心概念

1)import 匯入
import 模組名1

, 模組名2

import 模組名1

import 模組名2

使用as指定模組的別名

如果模組的名字太長,可以使用as指定模組的名稱,以方便在**中的使用

import 模組名1

as 模組別名

注意:模組別名應該符合大駝峰命名法

2)from…import 匯入
# 從 模組 匯入 某乙個工具

from 模組名1

import 工具名

注意

如果兩個模組,存在同名的函式,那麼後匯入模組的函式,會覆蓋掉先導入的函式

from…import *(知道)
# 從 模組 匯入 所有工具

from 模組名1

import

*

注意

這種方式不推薦使用,因為函式重名並沒有任何的提示,出現問題不好排查

python的直譯器在匯入模組時,會:

搜尋當前目錄指定模組名的檔案,如果有就直接匯入如果沒有,再搜尋系統目錄

在開發時,給檔案起名,不要和系統的模組檔案重名

python中每乙個模組都有乙個內建屬性__file__可以檢視模組完整路徑

示例

import random

# 生成乙個 0~10 的數字

rand = random.randint(0,

10)print

(rand)

注意:如果當前目錄下,存在乙個random.py的檔案,程式就無法正常執行了!

實際開發場景

__name__屬性

在很多 python 檔案中都會看到以下格式的**

# 匯入模組

# 定義全域性變數

# 定義類

# 定義函式

# 在**的最下方

defmain()

:# ...

pass

# 根據 __name__ 判斷是否執行下方**

if __name__ ==

"__main__"

: main(

)

好處

新建乙個hm_message在目錄下,新建兩個檔案send_messagereceive_messagesend_message檔案中定義乙個send函式

receive_message檔案中定義乙個receive函式

在外部直接匯入hm_message的包

# 從 當前目錄 匯入 模組列表

from

.import send_message

from

.import receive_message

1) 建立 setup.py
from distutils.core import setup

setup(name=

"hm_message"

,# 包名

version=

"1.0"

,# 版本

description=

"itheima's 傳送和接收訊息模組"

,# 描述資訊

long_description=

"完整的傳送和接收訊息模組"

,# 完整描述資訊

author=

"itheima"

,# 作者

author_email=

"[email protected]"

,# 作者郵箱

url=

"www.itheima.com"

,# 主頁

py_modules=

["hm_message.send_message"

,"hm_message.receive_message"

])

有關字典引數的詳細資訊,可以參閱官方**:

2) 構建模組

$ python3 setup.py build
3) 生成發布壓縮包
$ python3 setup.py sdist
注意:要製作哪個版本的模組,就使用哪個版本的直譯器執行!

$ tar -zxvf hm_message-1.0.tar.gz 

$ sudo python3 setup.py install

解除安裝模組

直接從安裝目錄下,把安裝模組的目錄刪除就可以

$ cd /usr/local/lib/python3.

5/dist-packages/

$ sudo rm -r hm_message*

pip是乙個現代的,通用的python包管理工具

安裝和解除安裝命令如下:

# 將模組安裝到 python 2.x 環境

$ sudo pip install pygame

$ sudo pip uninstall pygame

# 將模組安裝到 python 3.x 環境

$ sudo pip3 install pygame

$ sudo pip3 uninstall pygame

mac下安裝ipython
$ sudo pip install ipython
linux下安裝ipython
$ sudo apt install ipython

$ sudo apt install ipython3

python 模組和包 python模組和包

一.模組 python 模組 module 是乙個 python 檔案,以 py 結尾,包含了 python 物件定義和python語句。模組能定義函式,類和變數,模組裡也能包含可執行的 二.匯入模組 1.語法 import模組名from 模組名 import功能名from 模組名 import i...

Python 模組和包

包 模組的一種組織結構 乙個包由多個模組構成,即包含多個.py檔案 1匯入包的幾種形式 1 import module 將module模組中屬性列表的所有屬性匯入執行環境,使用時需要新增模組名稱,例如 module.func 2 from module import attrname,fucnnam...

python 模組和包

1.內建模組 本身就帶有的庫,就叫做python的內建的庫。模組 庫 一些常見的內建模組 os 和作業系統相關 os.path sys 和系統相關 sys.path re 正規表示式 2.第三方模組 非python本身自帶的庫,就是所謂的第三方的庫 3.模組的匯入 import as yy from...