對於乙個大規模的python程式,需要將功能分成幾個部分來實現,這樣才有良好的結構,這時就需要用到模組和包:模組是乙個pyhton的**檔案,包負責對模組檔案的封裝,這就類似於c++中標頭檔案的作用。
模組就是一塊一塊的**,各個.py檔案都可以被認為是乙個個的python模組(module)。
1.把自己編寫的模組新增到python安裝路徑下的(sites-package)就可以在程式設計時對其進行引用。
比如,我們編寫兩個py檔案
第乙個:my_new_pack1.py
value1 = "這裡是my_new_pack1的value1"
def my_new1_print():
print(value1)
第二個:my_new_pack2.py
value2 = "這裡是my_new_pack1的value1"
def my_new2_print():
print(value2)
新增到sites-packages資料夾中
new乙個python程式編輯視窗叫做test1,我們import 輸入mypycharm的自動補全幫我們找到了這兩個新加的package,說明匯入成功。
模組匯入的語法
import +模組名稱
如:import my_mew_pack1
為避免模組名太長不好使用,可以用as,為這個模組在本程式中的使用取乙個新名字。如:
mport my_new_pack1 as my1
在本程式中,my1就是my_mew_pack1了
2.查詢模組from my_new_pack1 import value1
查詢模組的三步:
ps:從上述查詢順序知道,當前目錄是第一優先查詢的。因此,如果在當前目錄下建立乙個與標註庫重名的python檔案,在呼叫時會優先呼叫自己建立的這個當前目錄下的python檔案,從而引起錯誤。編寫python程式時,不要使用標準庫中已經存在的名字命名。程式**太多可以分成模組,模組太多怎麼辦呢?————打包成包。
包是什麼?包是一組模組的集合,而模組是乙個python檔案,因此,包就是乙個裝著許多python檔案的檔案,package。包在邏輯上是單純的模組的集合,但在實際上還要多出來乙個"__init__.py「檔案
__init__.py檔案中,寫著對各個模組的引用,以及乙個起著索引目錄作用的屬性__all__,__all__是個列表。包的匯入,與模組的匯入一樣的4種語法。不同的是在第四種帶*的語句中:
(1)對於前三種語句,指定匯入什麼就是匯入什麼。(2)對於第四種語句,用*匯入時,會有乙個匯入索引優先順序的判斷:
首先查詢__init__內的__all__列表,把__all__列表內容,當做索引匯入對應模組;
如果沒有__all__列表,則查詢__init__中import的那幾個模組。
Python模組基礎知識
1 模組的概念 介紹 乙個包含python 的檔案就是乙個模組。2.使用模組的作用 1 現在程式開發檔案比較大,都放在乙個檔案中維護不方便,拆分成多個檔案方 便維護 與管理 2 模組可以增加 的重用率 3.建立模組 模組本身就是乙個檔案,所有py 都可以在檔案中直接書寫。不過我們開發 共用模組時,最...
python入門 基礎知識
1.運算子 加 減 乘 除 取餘 平方 2.獲取輸入 input 函式獲取使用者的輸入,將字串和數字轉換成整數 raw input 函式獲取使用者的輸入,結果被看作原始字串 test input pleae enter your name intpu jackm or 3,此函式讀取引數加入 數字不...
Python基礎知識 os模組
python中os模組包含了普遍的作業系統的功能,本文總結了os模組中各種函式的功能和使用方法。os模組包含了普遍的作業系統的功能 import os print os name 獲取作業系統型別nt windows posix linux unix或mac os x print os enviro...