Python:将arg值赋给变量时出现奇怪的错误

时间:2015-08-12 20:10:32

标签: python argparse

在尝试将argparse中的值分配给变量时,python抛出了一个奇怪的错误。

我的代码是:

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument('--hostname', required=True)
    parser.add_argument('--username', default='root', type=str)
    parser.add_argument('--password', default='uy4h183D')
    parser.parse_args()
    hostname = args.hostname
    username = args.username
    password = args.password
    file = hostname + '.csv'
    print("The filename is {0}".format(file))
    main()

错误是:

./4collect.py --hostname bar 
Traceback (most recent call last):
File "./4collect.py", line 68, in <module>
hostname = args.hostname
NameError: name 'args' is not defined

1 个答案:

答案 0 :(得分:6)

您需要指定args

args = parser.parse_args()