1
我試圖根據屬性列表中的位置來分配多個參數屬性。舉個例子;將變量分配給多個argparse屬性
import argparse
import sys
def args_options:
parser = argparse.ArgumentParser()
parser.add_argument('-s', help='-s argument help', nargs=3)
parser.add_argument('-k', help='-k argument help', nargs=3)
arguments = parser.parse_args()
return arguments
def assign_arg():
args = args_options()
if args.s or args.k:
variable1 = args[1] # this is where I'm stuck as I know this won't work
variable2 = args[2] #^
從上面的,我想,以檢查是否任何arg.s或arg.k是真實的,如果是這樣,然後在任一參數列表中的第二個和第三個屬性分配給變量。
是否有可能用python做到這一點?或者我需要去做;
if arg.s:
variable1 = arg.s[1]
variable2 = arg.s[2]
elif arg.k:
variable1 = arg.k[1]
variable2 = arg.k[2]
上面的工作,但我有很多的選項/屬性,所以代碼可能會變長。希望通過在多個參數選項列表中查找屬性並將其分配給一個變量來更有效地實現它。
你的選擇不是一個互斥的組,如果指定了'-s'和'-k'? –
似乎'-s'或'-k'的參數是以相同的方式處理的,將s/k作爲標誌並分別處理參數不是更有意義嗎? –