我需要编写需要命令参数才能执行的python脚本。我有这样的代码:
try:
opts, args = getopt.getopt(argv,"htt:tf:d:",["from=","to=","on="])
except getopt.GetoptError:
print 'logReader.py -f <from> -t <to> -d <on>'
sys.exit(2)
for opt, arg in opts:
if opt == '-h':
print 'logReader.py -f <from> -t <to> -d <on>'
sys.exit()
# elif opt
elif opt in ("-f", "--from"):
fromTime = arg
elif opt in ("-t", "--to"):
toTime = arg
elif opt in ("-d", "--on"):
onDate = arg
但是我没有任何参数就运行我的脚本,它什么都不做。如何添加一些检查,如果没有指定args,则应在控制台(或帮助)中显示错误消息
答案 0 :(得分:4)
如果没有设置参数,opts
将是一个空列表:
if not opts:
print 'logReader.py -f <from> -t <to> -d <on>'
sys.exit(2)
您应该考虑使用argparse
module代替,这可以指定某些命令行选项是必需的。