pip 安裝git上的代碼&&pip安裝項目方式加載自定義python包


1.您需要整個python包, setup.py

要打包的foo為要提供的python項目,結構圖如下:

foo#可安裝的軟件包
├──foo
│├──__init__.py
│└──bar .py
└──setup.py
文件夾框架:
新建一個文件夾,命名,我在此處的命名為foo,在文件夾中創建一個python文件——setup.py,它是打包python函數包的關鍵文件。在foo文件夾中再新建一個同名文件夾foo,在二級foo文件夾中創建python文件——init.py,文件夾的大體框架已經搭建好。如下:

foo
—— foo
————init.py
——setup.py

2. 編寫setup.py文件內容,下面是一個簡單的setup.py文件,

詳細的參數配置可以參考(https://docs.python.org/3.6/distutils/introduction.html#distutils-simple-example):

from setuptools import setup,find_packages
setup(name='testtest',
      version='0.1',
      description='a small example',
      classifiers=[
        'Programming Language :: Python',
        'Intended Audience :: Developers',
        'Operating System :: OS Independent',
    ],
      url='https://www.python.org/',
      author='zhizifanzhou',
      author_email='1004017906@qq.com',
      license='NEU',
      packages=find_packages(),
      zip_safe=True
     )

3.init.py內容為想要打包的函數,我在這里寫的是能實現加,減,乘法的一個包,代碼如下:

 
        
def add(a,b):#加法
    return a+b
def sub(a,b):#減法
    return a-b
def mul(a,b):#乘法
    return a*b
 
        

這兩個最主要的函數編寫結束之后,就可以准備打包了,先對setup.py 文件進行檢查。

4.檢查setup.py是否正確


Cmd打開命令提示符窗口,將文件路徑調到setup.py所在位置,輸入: python setup.py check。
在這里插入圖片描述
如果只輸出running check,說明正確。

 

有兩種安裝方式:

pip安裝git上的代碼命令:

若分支為master則無需特別指定分支名

如: $ pip install git + https://github.com/myuser/foo.git

若為指定分支則需要指定如下:

  使用https協議獲取:

 $ pip install git + https://github.com/myuser/foo.git@v123 
使用ssh協議獲取:
$ pip install git+ssh://git@github.com/Me1onRind/foo.git@test



pip安裝項目方式加載自定義python包

1.打包項目
還是在上述路徑下,輸入:python setup.py sdist。
在這里插入圖片描述
這時,項目就打包成功了。
在這里插入圖片描述

2.安裝自定義python包

找到打包好的python包,將cmd的路徑調至此處,使用pip進行安裝。
在這里插入圖片描述
安裝成功。

3.在visual studio 2017中使用該包

任意新建一個python文件,調用testtest包,並使用里面的函數。可以看到調用testtest包時,能夠自動識別包中函數。
在這里插入圖片描述
使用函數:

import testtest
a=testtest.add(1,2)
b=testtest.sub(1,2)
c=testtest.mul(1,2)
print(a,b,c)

這樣就完成了自己寫函數,打包后,再使用pip自己安裝調用的全過程了。

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM