這里主要介紹第二種方法:通過.ph文件進行設置,好處是可以將路徑設為永久路徑
10年積累的成都做網站、網站制作經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站設計后付款的網站建設流程,更有新和免費網站建設讓你可以放心的選擇與我們合作。
在Python的安裝目錄下,找到?\Lib\site-packages?文件夾,在該文件夾下新建一個以.pth為后綴名的文件,編輯文件,內容為要添加的庫路徑。(我的文件名命名為setpath.pth)。添加路徑示例:文件內容寫入要引用的庫路徑
步驟1:建立文件,可以首先建立一個文本文檔,寫下路徑如D:\\Python\\mulib。我這里新建的文件路徑的文件夾命名為“mulib”
步驟2:保存文檔時,將文件類型選為所有,文件名為 setpath.pth。文件名是什么無所謂,主要是只有當文檔類型選為“所有文件”,才可以定義文件類型為.pth
步驟3:將保存好的文件放在Python的site-packages文件夾中就完成了。
這個問題涉及到包和模塊管理。包名和模塊名一般是小寫。你的文件是下面的結構,需要創建空文件 b/__init__.py,將b目錄變成package。a/a.py
12
from b.c import indexindex()
b/c.py
12
def index(): print("hello")
b/__init__.pya/a.py 里面有兩種引用方式,相對引用和絕對引用:# 如果a.py是 library,兩種引用方式都可以
1
from ..b.c import index
# 如果a.py是 executable,必須使用絕對引用
1
from b.c import index
如果使用絕對引用,需要確保b所在目錄在PYTHONPATH (sys.path)里面,比如可以這樣執行:
1
env PYTHONPATH=. python a/a.py
看你用哪種方式
如果是import
包名,就是包名.函數名方式調用
如果是from
包名
import
函數名、from
包名
import
*,就是直接函數名就可以調用
沒有可以自動導入的工具,只能手動導入模塊
python環境變量設置可以在系統環境變量里設置PYTHONPATH
也可以使用python命令行設置,
cmd
python
import sys
sys.path.append(path of your lib-dir)
exit
from xxx import *
就行了
比如math中的sin
from math import *
sin(x)這樣就行了
6.4. 包
包通常是使用用“圓點模塊名”的結構化模塊命名空間。例如,名為 A.B 的模塊表示了名為 A 的包中名為 B 的子模塊。正如同用模塊來保存不同的模塊架構可以避免全局變量之間的相互沖突,使用圓點模塊名保存像 NumPy 或 Python Imaging Library 之類的不同類庫架構可以避免模塊之間的命名沖突。
假設你現在想要設計一個模塊集(一個“包”)來統一處理聲音文件和聲音數據。存在幾種不同的聲音格式(通常由它們的擴展名來標識,例如:.wav, .aiff,.au ),于是,為了在不同類型的文件格式之間轉換,你需要維護一個不斷增長的包集合。可能你還想要對聲音數據做很多不同的操作(例如混音,添加回聲,應用平衡 功能,創建一個人造效果),所以你要加入一個無限流模塊來執行這些操作。你的包可能會是這個樣子(通過分級的文件體系來進行分組)
當導入這個包時,Python 通過 sys.path 搜索路徑查找包含這個包的子目錄。
為了讓 Python 將目錄當作內容包,目錄中必須包含 __init__.py 文件。這是為了避免一個含有爛俗名字的目錄無意中隱藏了稍后在模塊搜索路徑中出現的有效模塊,比如 string。最簡單的情況下,只需要一個空的 __init__.py 文件即可。當然它也可以執行包的初始化代碼,或者定義稍后介紹的 __all__ 變量。
用戶可以每次只導入包里的特定模塊,例如:
import sound.effects.echo
這樣就導入了 sound.effects.echo 子模塊。它必需通過完整的名稱來引用:
sound.effects.echo.echofilter(input, output, delay=0.7, atten=4)
導入包時有一個可以選擇的方式:
from sound.effects import echo
這樣就加載了 echo 子模塊,并且使得它在沒有包前綴的情況下也可以使用,所以它可以如下方式調用:
echo.echofilter(input, output, delay=0.7, atten=4)
還有另一種變體用于直接導入函數或變量:
from sound.effects.echo import echofilter
這樣就又一次加載了 echo 子模塊,但這樣就可以直接調用它的 echofilter() 函數:
echofilter(input, output, delay=0.7, atten=4)
需要注意的是使用 from package import item 方式導入包時,這個子項(item)既可以是包中的一個子模塊(或一個子包),也可以是包中定義的其它命名,像函數、類或變量。import 語句首先核對是否包中有這個子項,如果沒有,它假定這是一個模塊,并嘗試加載它。如果沒有找到它,會引發一個 ImportError 異常。
本文名稱:python加載函數包,python怎么調用包
分享URL:http://vcdvsql.cn/article6/hshcog.html
成都網站建設公司_創新互聯,為您提供自適應網站、軟件開發、移動網站建設、微信小程序、小程序開發、網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯