栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

click python cli 开发包

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

click python cli 开发包

python click 包是一个方便的cli 开发包,我们可以用来开发强大的cli 应用

使用venv 进行环境准备,示例代码来自官方

venv 环境准备
python3 -m venv demoapp

安装
pip install click

基本使用
  • 代码

    cli.py

import click

@click.command()
@click.option("--count", default=1, help="Number of greetings.")
@click.option("--name", prompt="Your name",
              help="The person to greet.")
def hello(count, name):
    """Simple program that greets NAME for a total of COUNT times."""
    for _ in range(count):
        click.echo("Hello, %s!" % name)

if __name__ == '__main__':
    hello()
  • 运行
python cli.py

效果

python cli.py 
Your name: dalong
Hello, dalong!

制作一个pip 包

制作pip 包可以方便进行我们的代码分发,还是使用venv 进行环境的准备

  • 项目结构
├── README.md
├── cli
│ └── __init__.py
└── setup.py

 

 

  • 代码说明
    cli/init.py 核心代码
import click
@click.command()
@click.option("--count", default=1, help="Number of greetings.")
@click.option("--name", prompt="Your name",
              help="The person to greet.")
def hello(count, name):
    """Simple program that greets NAME for a total of COUNT times."""
    for _ in range(count):
        click.echo("Hello, %s!" % name)

if __name__ == '__main__':
    hello()

setup.py pip 包配置

import setuptools
with open("README.md", "r") as fh:
    long_description = fh.read()

setuptools.setup(
    name="dalongrong_cli-demo",
    version="0.0.1",
    author="dalongrong",
    author_email="1141591465@qq.com",
    description="a simple cli project",
    long_description=long_description,
    install_requires=['click'],
    long_description_content_type="text/markdown",
    url="https://github.com/rongfengliang/click-cli-demo.git",
    packages=setuptools.find_packages(),
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: MIT License",
        "Operating System :: OS Independent",
    ],
    entry_points={
        'console_scripts': [
            'dalongcli=cli:hello',
        ],
    }
)
  • 本地安装测试
pip install .

cli 使用命令

dalongcli --name dalong --count 3

效果

Hello, dalong!
Hello, dalong!
Hello, dalong!

 

 

  • 说明
    比较好的方法是push 到pip 私服(企业内部),或者push 到公共pip 仓库,方便大家都使用,具体的可以参考 自定义pip 开发

参考资料

https://github.com/pallets/click
Welcome to Click — Click documentation (7.x)
自定义pip 包开发简单说明 - 荣锋亮 - 博客园
https://github.com/rongfengliang/click-cli-demo
Packaging and distributing projects — Python Packaging User Guide

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/444321.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号