在python中如何建立一個自己的包
python如何建立一個自己的包
一些概念
- 模塊:我們寫的每個py都是一個模塊
- 包:模塊的集合,就是一個包,通常包和directory的區(qū)別在于是否有__init__.py
- init.py:它可以空著,標識該目錄為包;也可以寫一些方法和變量(不建議寫);還可以用__all__=[""]來限制 from xxx import * 引入哪些模塊
如何建立(示例)
目標: 我們要建立ansemb包,作為一個工具包,供其他py依賴,是以下的結構
- 其中test要引入同目錄下的test2
- 其中dataset中不能暴露test2
|--try |--ansemb |--dataset |--test.py |--test2.py |--__init__.py |--config.py |--__init__.py
- 首先,我們建立 文件夾ansemb;創(chuàng)建config.py;創(chuàng)建空的__init__.py
- 然后,就創(chuàng)建 文件夾dataset;創(chuàng)建test2.py;創(chuàng)建__init__.py,在其中鍵入__all__=["test"],進行約束
- 之后來實現test引入test2,這里使用相對路徑進行引入
導入自己寫好的python包
- 1、建立自己的setup.py文件
- 2、將setup.py文件和寫好的python包放到anaconda根目錄下
- 3、在根目錄下cmd運行python setup.py install
- 4、會在根目錄下生成build文件,內部有l(wèi)ib->(自己寫的python包)
實例
我導入的是這篇論文中的代碼
《Deep Spatio-Temporal Residual Networks for Citywide Crowd Flows Prediction》
setup.py長這樣:
我將導入deepst文件中的包,以方便在后續(xù)運行中的調用
先將其中deepst文件和setup.py文件放入我anaconda安裝的路徑下
(這里我創(chuàng)建了虛擬環(huán)境,所以直接裝在虛擬環(huán)境里面)
在此路徑下cmd 運行
python setup.py install
則會出現一個build文件
此時表示導入成功
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
2023年最新版Python?3.12.0安裝使用指南(推薦!)
這篇文章主要給大家介紹了關于2023年最新版Python?3.12.0安裝使用的相關資料,Python?現在是非常流行的編程語言,當然并不是說Python語言性能多么強大,而是Python使用非常方便,特別是現在AI和大數據非常流行,用?Python?實現是非常容易的,需要的朋友可以參考下2023-10-10python 轉換 Javascript %u 字符串為python unicode的代碼
這篇文章主要介紹了python 轉換 Javascript %u 字符串為python unicode的代碼,需要的朋友可以參考下2016-09-09Python使用min、max函數查找二維數據矩陣中最小、最大值的方法
這篇文章主要介紹了Python使用min、max函數查找二維數據矩陣中最小、最大值的方法,涉及Python矩陣生成、遍歷、查找等相關操作技巧,需要的朋友可以參考下2018-05-05Python畫柱狀統計圖操作示例【基于matplotlib庫】
這篇文章主要介紹了Python畫柱狀統計圖操作,結合實例形式分析了Python基于matplotlib庫實現圖形繪制的相關操作技巧,需要的朋友可以參考下2018-07-07聊聊Python代碼中if?__name__?==?‘__main__‘的作用是什么
一個python文件通常有兩種使用方法,第一是作為腳本直接執(zhí)行,第二是 import 到其他的python腳本中被調用執(zhí)行,這篇文章主要給大家介紹了關于Python代碼中if?__name__?==?‘__main__‘的作用是什么的相關資料,需要的朋友可以參考下2022-03-03