[英]How to store argparse values in variables?
我正在嘗試使用以下代碼將命令行選項添加到我的腳本中:
import argparse
parser = argparse.ArgumentParser('My program')
parser.add_argument('-x', '--one')
parser.add_argument('-y', '--two')
parser.add_argument('-z', '--three')
args = vars(parser.parse_args())
foo = args['one']
bar = args['two']
cheese = args['three']
這是正確的方法嗎?
另外,如何從 IDLE shell 運行它? 我使用命令“python myprogram.py -x foo -y bar -z cheese”,它給了我一個語法錯誤
這會起作用,但您可以像這樣簡化它:
args = parser.parse_args()
foo = args.one
bar = args.two
cheese = args.three
使用args.__dict__
args.__dict__["one"]
args.__dict__["two"]
args.__dict__["three"]
我目前正在使用
import argparse
import sys
parser = argparse.ArgumentParser('My program')
parser.add_argument('--one')
parser.add_argument('--two')
parser.add_argument('--three')
parser.parse_args(namespace=sys.modules[__name__])
print(f"{one}, {two}, {three}")
有理由不這樣做嗎?
獲取文檔中建議的參數值的規范方法是像您一樣使用vars
並按名稱訪問參數值:
argv = vars(args)
one = argv['one']
two = args['two']
three = argv['three']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.