在尝试将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
答案 0 :(得分:6)
您需要指定args
:
args = parser.parse_args()