显示并打印argparse.namespace(args)对象的内容以进行调试。

printargs的Python项目详细描述


打印argparse.Namespace对象的格式良好的视图 出于调试目的:

import sys
import argparse
import printargs

def main(args):
    printargs.show(args)
    # do somthing with args

def get_argument_parser():
    p = argparse.ArgumentParser()
    p.add_argument('-f', '--foo', action='store')
    p.add_argument('-b', '--bar', action='store', type=int)
    p.add_argument('-o', '--output', action='store', default=sys.stdout)
    return p

if __name__ == "__main__":
    argument_parser = get_argument_parser()
    args = argument_parser.parse_args()
    main(args)

要使用输出进行日志记录或编辑,请使用printargs.formatted 函数,返回字符串而不是打印字符串:

import sys
import argparse
import printargs

def main(args):
    t = printargs.formatted(args)
    with open('log', 'a') as logfile:
        logfile.write("Test program called with parameters:")
        logfile.write(t)
        logfile.write("\n\n")


def get_argument_parser():
    p = argparse.ArgumentParser()
    p.add_argument('-f', '--foo', action='store')
    p.add_argument('-b', '--bar', action='store', type=int)
    p.add_argument('-o', '--output', action='store', default=sys.stdout)
    return p

if __name__ == "__main__":
    argument_parser = get_argument_parser()
    args = argument_parser.parse_args()
    main(args)

安装

printargs可以与pip一起安装:

me@machine:~$ pip install printargs

或者来源:

me@machine:~$ git clone https://HenningTimm@bitbucket.org/HenningTimm/printargs.git
me@machine:~$ cd printargs
me@machine:~/printargs$ python setup.py install

计划功能

  • 基于光标的颜色输出

许可证

printargs是开源的,并在MIT License下获得许可。

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

推荐PyPI第三方库


热门话题
java如何设置将在类声明中使用的输入参数?   混合表达式和文本的java SpEL模板   getHeaders()无法返回java Mockito测试SimpMessageHeaderAccessor getHeaders()应返回MessageHeaders   如何在java中创建循环回菜单的方法   具有多态性的Java列表问题   java Guice多数据库自动切换   java服务器错误,状态代码:400,错误代码:100005,消息:您已超过组织的内存限制   静态mutator方法的Java命名约定   用于实例化另一个java文件的groovy java代码   javajavax。网ssl。SSLHandshakeException:握手期间远程主机关闭连接。重新启动服务器后,它工作正常,但会再次显示   java WebSphere+RAD+Taglib   REST客户端中出现java异常:找不到contenttype application/json的messagebodyreader   无参数setter的Java命名   java从数组中删除重复字符