[英]Is there a way that I can pass 0 command line arguments in python and have the same result if a particular argument is passed?
我对 Python 还很陌生。 当 (i) 没有传递命令行 arguments (ii) 传递特定的命令行参数,比如“帮助”时,我需要一段代码来运行
我曾尝试使用 argparse 和 sys 但我似乎无法让两者都工作。
对于 argparse,我在添加参数时尝试了“default='help'”: parser=add_argument("arg1",default="help")
对于 sys.argv,我尝试了以下代码:
if (sys.argv[1] == 'help') or not (len(sys.argv) > 1)
但这只是给了我一个“索引超出范围”错误。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("--arg1", default="help")
args = parser.parse_args()
def help():
print("I'm here to help, sorta")
if args.arg1 == "help":
help()
在没有任何命令行 arguments 的情况下运行此命令将 output 帮助消息。 使用python3 program.py --arg1 help
运行它(假设此代码在文件 program.py 中)也将 output 帮助消息。 最后,运行python3 program.py --arg1 nohelp
不会 output 帮助消息(不仅仅是“nohelp”,而是“help”以外的任何内容)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.