使已經(jīng)上傳到pypi的項(xiàng)目可以直接命令行執(zhí)行

上面講到怎么將自己的項(xiàng)目上傳到pypi,并成功安裝使用,但是咱的野心不止如此啊,如果只是這樣的話(huà),咱們的模塊只能在腳本中引用使用或者在python的解釋環(huán)境中使用,這不符合裝X的的規(guī)范啊

image.png

那么怎樣能使得我們的模塊能夠像系統(tǒng)命令一樣直接在終端命令行執(zhí)行呢?

image.png

如上是我的目錄結(jié)構(gòu),我的腳本名為xyscript,圈出來(lái)的就是必要的文件,可以根據(jù)自己的情況修改。
(注:下文script_name指代腳本名)

其中bin/script_name.py內(nèi)容為

#! /usr/bin/env python
from script_name.scripts.script_name import main
main()

其中script_name/scripts/init.py 內(nèi)容可以為空
其中script_name/scripts/script_name.py內(nèi)容為:

from __future__ import absolute_import

__all__ = ['function1', 'function2', 'function3','main']
from xyscript.api import function1, function2, function3 main

最后重要的是要把腳本定義的接口對(duì)應(yīng)的方法都寫(xiě)到script_name/api.py中。

補(bǔ)充:一般來(lái)說(shuō),在開(kāi)發(fā)過(guò)程中新增的方法和文件如果想立即安裝生效,我們可以使用:

$ python setup.py develop

但是開(kāi)發(fā)完成,發(fā)布了新的版本后我們想卸載掉develop安裝的文件,改成從pypi安裝的,這個(gè)時(shí)候是無(wú)法直接uninstall的,需要使用以下命令重新安裝一遍:

$ python setup.py install --record files.txt

安裝的所有文件將會(huì)羅列在files.txt文件中,要么手動(dòng)一個(gè)個(gè)按照地址刪除,要么使用:

$ cat files.txt | xargs rm -rf

一鍵刪除

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Distutils可以用來(lái)在Python環(huán)境中構(gòu)建和安裝額外的模塊。新的模塊可以是純Python的,也可以...
    MiracleJQ閱讀 3,258評(píng)論 0 1
  • 一、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 6,354評(píng)論 0 10
  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個(gè) Awesome - XXX 系列...
    小邁克閱讀 3,129評(píng)論 1 3
  • 第 2 章 SHELL 基礎(chǔ)知識(shí)2.1 shell腳本我們?cè)谏厦婧?jiǎn)單介紹了一下什么是shell腳本,現(xiàn)在我們來(lái)進(jìn)一...
    LiWei_9e4b閱讀 1,652評(píng)論 0 0
  • 文/江山妖饒 我國(guó)道教始祖老子說(shuō):“人法地、地法天、天法道、道法自然?!本褪钦f(shuō),最終宇宙天地間萬(wàn)事萬(wàn)物均要效法或遵...
    江山妖饒閱讀 1,491評(píng)論 4 12

友情鏈接更多精彩內(nèi)容