python基礎 模組和包

2021-10-12 07:29:22 字數 3044 閱讀 8654

目錄[-]

每乙個專案是由乙個或多個模組組成。

每乙個以.py結尾的檔案(python源**)都是乙個模組【工具包】。

模組【工具包】中定義的全域性變數,類,函式都是可以提供給呼叫函式使用的工具。

模組可以根據功能來進行設計,使得可以更有邏輯的組織**段,以及更好的復用。

在日常工作開發中每個人可以負責自己的模組,主程式在使用相關功能時只需要呼叫相關的模組即可,這樣更容易實現敏捷開發。

import 加 模組名字直接匯入

建立了乙個新的命名空間,呼叫模組內部方法時,需要加上命名空間名字。

• 匯入隨機數字生產模組

import random
• 匯入作業系統介面模組

import os
•  模組別名採用小寫字母from module import function

#將相關模組的定義匯入到當前的命名空間,使用模組內部法方法時,無須新增字首。

from random import randint

print(randint(1, 100))

• 當有重複的方法名字時,可以使用as關鍵字解決

import  加模組名字 as 名字

import random as 模組別名

模組別名.rand

import random as test

print(test.randint(1, 100))

from module import function as new\_name

from module import \*

通過這種方式可以匯入module中的所有方法,並且在具體使用時也無須新增字首。

首先在當前目錄下搜尋模組,如果有則直接匯入,如果沒有,再在系統目錄下搜尋。

• 模組的內建屬性__file __:通過該屬性可以檢視模組的完整路徑

import random

print(random.__file__)

__name__:該屬性記錄的是執行程式的起點,如果該檔案即是執行檔案,則該屬性包含的字串就是__main__,如果不是,則該檔案即是被其他檔案匯入的,通過這種方式可以實現模組中的執行**只有在測試本檔案時生效,而匯入時不生效。

# a.py

def show_test():

print("模組匯入成功,且函式已經執行!")

def main():

print("hello,world")

if __name__ == "__main__":

main()

# b.py

import test

test.show_test()

直接執行 a.py,則會輸出:hello,world

執行b.py,則會輸出:模組匯入成功,且函式已經執行!

而hello,world不會輸出。

dir()函式

返回乙個列表,裡面包含了這個模組裡所有的模組,變數和函式

python包是乙個分層次的檔案目錄結構,簡答的來說,包就是乙個資料夾。

該資料夾下必須存在乙個特殊的檔案__init__.py檔案。

使用 import 包名,則可以一次性匯入所有的模組

要在外界使用 包 中的模組,需要在 __init__.py 中指定 對外界提供的模組列表

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

from . import send_message

from . import receive_message

• 在包目錄下新建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"])

• 構建模組

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*

python下通用的包管理工具是pip

• 包安裝

sudo pip3 install package_name

sudo pip3 uninstall package_name

• 包搜尋

pip3 search package_name
• 列出已安裝的包

pip3 list
• 顯示已安裝的包的資訊

pip3 show package_name

Python基礎 模組和包

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

Python基礎 模組和包

1.2.製作模組 1.3.模組定位順序 1.4.all 二.包 2.2 匯入包 2.2.2 方法二 python 模組 module 是乙個 python 檔案,以 py 結尾,包含了 python 物件定義和python語句。模組能定義函式,類和變數,模組裡也能包含可執行的 1.1.2.1 imp...

python 模組和包 python模組和包

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