模組是 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_message
和receive_message
在send_message
檔案中定義乙個send
函式
在receive_message
檔案中定義乙個receive
函式
在外部直接匯入hm_message
的包
# 從 當前目錄 匯入 模組列表
from
.import send_message
from
.import receive_message
from distutils.core import setup
setup(name=
"hm_message"
,# 包名
version=
"1.0"
,# 版本
description=
"itheima's 傳送和接收訊息模組"
,# 描述資訊
long_description=
"完整的傳送和接收訊息模組"
,# 完整描述資訊
author=
"itheima"
,# 作者
author_email=
,# 作者郵箱
url=
"www.itheima.com"
,# 主頁
py_modules=
["hm_message.send_message"
,"hm_message.receive_message"
])
有關字典引數的詳細資訊,可以參閱官方**:
$ python3 setup.py build
$ 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
$ sudo pip install 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深入之包和模組,包和模組的匯入方式
關於包和模組 2 包 是乙個有層級的目錄結構,包含n個模組或者n個子包,包中一定要有 init py檔案 3 庫 是完成一定功能的 集合,表現形式是乙個模組,或包 4 框架 是乙個架構層面的概念,為解決乙個開放性問題而設計的具有一定約束性的支撐結構,通過框架可以快速實現乙個解決問題的骨架,後面按照框...
Python學習 之 模組和包
包 匯入同級目錄下的模組 直接匯入 import mod 匯入並起別名 import mod as mod name 匯入不同級目錄下的模組 from dir.xx.xx import mod from dirimport mod as mod name 匯入目錄下所有模組 from dirimpo...