我使用argparse
来解析控制台输入。对于我的一个输入选项,我想添加一个取决于其他选项的默认选项:
parser.add_argument('--job_name')
parser.add_argument('--user_name',
default='guest')
我希望用户能够定义job_name
,但如果用户没有定义job_name
,我希望user_name + datetime.date.today()
为'guest2016-10-23'
,(例如argparse
)。
是否可以在lambda
内执行此操作?也许是通过提供{{1}} ......?
答案 0 :(得分:3)
我认为这是不可能的,因为在初始化之前不能使用“ args.user_name”。 但是您可以这样做:
import argparse
import datetime
parser = argparse.ArgumentParser()
parser.add_argument('--job_name', default=None)
parser.add_argument('--user_name', default='guest')
args = parser.parse_args()
if args.job_name is None:
args.job_name = args.user_name + str(datetime.date.today())