我正在使用optparse
获取命令行输入。在
假设我正在运行一个脚本demo.py
,它创建了一些输出。但除非指定命令行输入,否则输出不会写入文件。在
我正努力做到以下几点:
命令行中的python demo.py
应该运行脚本,但不能在任何地方写入输出。在
命令行中的python demo.py -o
应该将输出写入我的默认文件名output.txt
。在
命令行中的python demo.py -o demooutput.txt
应该将输出写入文件demooutput.txt
。在
我不想从optparse
切换到argparse
。在
Tags:
我不认为有不幸的-我能想到的唯一方法就是通过添加自己的逻辑语句来解决问题。下面的代码应该能做到这一点。在
这并不能回答直接的问题“如何定义操作…”,但它以一种简单的方式处理输入。在
将
'-o'
设置为'store_true'
。如果为True,请检查'args'
变量的文件名。在(在
argparse
中,相当于用nargs='?'
定义一个位置参数。)如果这些是唯一的参数,您也可以通过检查文件名而不需要
`-o'
来实现。在另一种可能性-“store_const”,位置“filename”具有优先级:
^{pr2}$您可以使用optparse-callbacks来实现这一点。在
下面是它将如何为您的用例工作。在
相关问题 更多 >
编程相关推荐