从简单的命令行分析函数的参数

parseargs的Python项目详细描述


解析参数

解析命令行参数的简单、直观的方法。只需创建一个函数,并对其调用parseargs。
  • 通过注释分析数据类型(字符串参数不需要注释)
  • 将位置参数解析为具有相同名称的位置cli参数
  • 通过将可选关键字参数添加为可选cli参数来解析这些参数
  • 解析带注释的参数并对类型使用本机cli规范
  • 使用方法的签名添加命令的说明。在

示例

在有趣.py公司名称:

fromparseargsimportparseargsdeffun(firstname,lastname:str,number:int=5):print(f"Hello {firstname}{lastname}")print(f"Your number is {number}")number*=2print(f"Twice your number is {number}")parseargs(fun)

现在在命令行上,您可以执行以下操作:

^{pr2}$

注意它将如何打印出10。如果删除声明数字为int的注释,它将打印出55,因为它将把它解释为字符串。在

我们可以通过以下方式获得方法签名:

$ python fun.py -h
usage: fun.py [-h] [-n NUMBER] firstname lastname

signature = (firstname, lastname: str, number: int = 5)

positional arguments:
  firstname
  lastname

optional arguments:
  -h, --help            show this help message and exit
  -n NUMBER, --number NUMBER

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Redis MQ在springboot程序中与JDBC存在问题   java比较数组中的索引值并返回新数组   java为什么Jericho解析器不能解析这个HTML代码?   使用java的文件IO   使用OpenCV实现java RGB到LMS颜色空间的转换   java有什么区别吗?SwingWorker#发布vs SwingUtilities#调用器   java在列(数量)中,我也有一些double和N/a类型的值。如何使用比较器对两者进行排序?   java HSQLDB:。脚本文件在并行执行多个项目[多线程环境]期间自动删除?   java如何在JAXWS出现异常时发送自定义响应消息而不是错误消息?   SpringJavaTomcat:重新加载上下文。不重新启动服务器的xml   JAVA中的对象数组提供InputMismatchException   java是分析和过滤独特句子的最佳算法?   eclipse编写自定义重构脚本的最佳java库是什么?   来自ArrayList的java随机背景<Drawable>   java提取服务器证书   java异常:尝试调用虚拟方法“int com”。谷歌。安卓gms。地方位置请求。空对象引用上的b()