python包管理機制 Python例項 包機制

2021-10-18 15:02:32 字數 1141 閱讀 8290

每乙個.py檔案稱為乙個module,module之間可以互相匯入.請參看以下例子:

# a.py

def add_func(a,b):

return a+b

# b.py

from a import add_func # also can be : import a

print ("import add_func from module a")

print ("result of 1 plus 2 is: ")

print (add_func(1,2))    # if using "import a" , then here should be "a.add_func"

module可以定義在包裡面.python定義包的方式稍微有點古怪,假設我們有乙個parent資料夾,該資料夾有乙個child子資料夾.child中有乙個module a.py . 如何讓python知道這個檔案層次結構?很簡單,每個目錄都放乙個名為_init_.py 的檔案.該檔案內容可以為空.這個層次結構如下所示:

parent

--__init_.py

--child

-- __init_.py

--a.py

b.py

那麼python如何找到我們定義的module?在標準包sys中,path屬性記錄了python的包路徑.你可以將之列印出來:

import sys

print(sys.path)

通常我們可以將module的包路徑放到環境變數pythonpath中,該環境變數會自動新增到sys.path屬性.另一種方便的方法是程式設計中直接指定我們的module路徑到sys.path 中:

import sys

import os

print(sys.path)

from a import add_func

print (sys.path)

print ("import add_func from module a")

print ("result of 1 plus 2 is: ")

print (add_func(1,2))

知識點:

如何定義模組和包

如何將模組路徑新增到系統路徑,以便python找到它們

如何得到當前路徑

ubuntu包管理機制

在使用apt get install 和 apt get update時,系統會先掃瞄 etc apt 目錄下的所有的源倉庫檔案。該目錄下包含兩種型別的檔案,源倉庫檔案source.list和gpg秘鑰。其中source.list是ubunut官方的源倉庫檔案。souce.list檔案的結構如下所示...

Linux軟體包管理機制

1 紅帽系作業系統軟體管理分類 yumrpm source bin2 rpm工具管理rpm軟體包 2.1 認識rpm軟體包 rpm軟體包名稱 軟體名稱 版本號 主版本 次版本 修訂號 作業系統 cpu平台 作業系統 el6 el5 fedora suse debin ubuntu cpu平台i386...

Debian和Gentoo包管理機制比較及延伸

如果你現在想安裝一套linux,又不想隨著linux發行版本的版本號,不停的格式化系統,重新安裝,或者公升級安裝。那麼,最適合你的只有lfs debian和gentoo。本文嘗試對debian gentoo的包管理機制進行比較,並由此得出了幾個有趣的結論。本文對於debian gentoo的包管理,...