欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 快速實(shí)現(xiàn)CLI 應(yīng)用程序的腳手架

 更新時(shí)間:2017年12月05日 09:06:38   作者:馬飛  
本篇文章主要介紹了Python 快速實(shí)現(xiàn)CLI 應(yīng)用程序的腳手架,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

今天跟大家分享一下如何快速實(shí)現(xiàn)一個(gè)Python CLI應(yīng)用程序的腳手架,之所以會(huì)做這個(gè)是因?yàn)楫?dāng)時(shí)需要做一個(gè)運(yùn)維的小工具希望用命令行的方式來使用,但是搜遍網(wǎng)上很多資料都沒有系統(tǒng)講解從開發(fā)、集成、發(fā)布、文檔等一系列流程的文章。

工程結(jié)構(gòu)

如上圖,這就是一個(gè)比較規(guī)范的Python CLI應(yīng)用項(xiàng)目了,下面一一講下各文件的用途:

項(xiàng)目文檔

這里我們用Sphinx來實(shí)現(xiàn)文檔的自動(dòng)生成,當(dāng)然你要首先通過markdown和rst文件定義好文檔的內(nèi)容,然后進(jìn)入docs目錄執(zhí)行 make html命令就可以在_build目錄下生成對(duì)應(yīng)的靜態(tài)文件,如下圖:

具體Sphinx如何使用以及配置后面會(huì)單獨(dú)文章講解

主工程

這里講幾個(gè)需要注意的地方

1、日志的配置:

這里可以全局設(shè)置日志的一些輸出級(jí)別和格式化方式

2、cli文件

這里通過click庫(kù)來實(shí)現(xiàn)

3、二進(jìn)制文件打包

如上圖,有時(shí)候我們的工程中會(huì)包含二進(jìn)制文件,也就是非Python代碼的文件,這時(shí)候如果還是像往常一樣打包發(fā)布,安裝的時(shí)候會(huì)發(fā)現(xiàn)無法找到此文件,所以需要在根目錄的MANIFEST.in文件中加入

腳本

如下圖,這里的make-release文件主要是用來自動(dòng)控制版本的,如下圖,通過Git 的提交記錄了來作為項(xiàng)目的唯一版本號(hào)標(biāo)識(shí),再對(duì) init 文件進(jìn)行重新寫入達(dá)到持續(xù)集成時(shí)版本號(hào)自增的目的。

單元測(cè)試

test文件夾中存放的就是項(xiàng)目的單元測(cè)試文件了,這里就不細(xì)展開講了,后面會(huì)具體講講如何跟Jenkins集成實(shí)現(xiàn)靜態(tài)代碼檢查

setup

最重要的就是setup.py這個(gè)文件了,項(xiàng)目最后打包發(fā)布到pypi倉(cāng)庫(kù)主要的配置信息都在這里了,如下圖:

這個(gè)腳手架的項(xiàng)目地址:https://github.com/logan62334/python-cli-template

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python 中使用 argparse 解析命令行參數(shù)

    Python 中使用 argparse 解析命令行參數(shù)

    這篇文章主要介紹了Python 中使用 argparse 解析命令行參數(shù),argparse 模塊是一個(gè)強(qiáng)大的命令行參數(shù)解析器,還有很多功能沒能在這里介紹。下面文化在哪個(gè)詳細(xì)介紹該內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • opencv實(shí)現(xiàn)圖片模糊和銳化操作

    opencv實(shí)現(xiàn)圖片模糊和銳化操作

    這篇文章主要為大家詳細(xì)介紹了opencv實(shí)現(xiàn)圖片模糊和銳化操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Python使用__new__()方法為對(duì)象分配內(nèi)存及返回對(duì)象的引用示例

    Python使用__new__()方法為對(duì)象分配內(nèi)存及返回對(duì)象的引用示例

    這篇文章主要介紹了Python使用__new__()方法為對(duì)象分配內(nèi)存及返回對(duì)象的引用,結(jié)合實(shí)例形式分析了Python對(duì)象初始化及內(nèi)存操作相關(guān)使用技巧,需要的朋友可以參考下
    2019-09-09
  • python如何實(shí)現(xiàn)wifi自動(dòng)連接,解決電腦wifi經(jīng)常斷開問題

    python如何實(shí)現(xiàn)wifi自動(dòng)連接,解決電腦wifi經(jīng)常斷開問題

    這篇文章主要介紹了python實(shí)現(xiàn)wifi自動(dòng)連接,解決電腦wifi經(jīng)常斷開的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • python中常用檢測(cè)字符串相關(guān)函數(shù)匯總

    python中常用檢測(cè)字符串相關(guān)函數(shù)匯總

    這篇文章主要介紹了python中常用檢測(cè)字符串相關(guān)函數(shù),實(shí)例匯總了Python針對(duì)字符串?dāng)?shù)字、字母、大小寫等常用檢測(cè)函數(shù),非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • Golang GBK轉(zhuǎn)UTF-8的例子

    Golang GBK轉(zhuǎn)UTF-8的例子

    今天小編就為大家分享一篇Golang GBK轉(zhuǎn)UTF-8的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python用Tkinter做自己的中文代碼編輯器

    python用Tkinter做自己的中文代碼編輯器

    這篇文章主要介紹了python用Tkinter做自己的中文代碼編輯器,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • python實(shí)現(xiàn)輸入任意一個(gè)大寫字母生成金字塔的示例

    python實(shí)現(xiàn)輸入任意一個(gè)大寫字母生成金字塔的示例

    這篇文章主要介紹了python實(shí)現(xiàn)輸入任意一個(gè)大寫字母生成金字塔的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 詳解如何使用Python在PDF文檔中創(chuàng)建動(dòng)作

    詳解如何使用Python在PDF文檔中創(chuàng)建動(dòng)作

    PDF格式因其跨平臺(tái)兼容性和豐富的功能集而成為許多行業(yè)中的首選文件格式,其中,PDF中的動(dòng)作(Action) 功能尤為突出,本文將介紹如何使用Python在PDF文檔中創(chuàng)建動(dòng)作,需要的朋友可以參考下
    2024-09-09
  • 詳解Python中魔法方法的使用

    詳解Python中魔法方法的使用

    Python的魔法方法,也稱為dunder(雙下劃線)方法,是可以讓你對(duì)類添加“魔法”的特殊方法。本文主要來和大家聊聊魔法方法的使用,需要的可以參考一下
    2022-12-12

最新評(píng)論