0
我有一些舊的代碼,它有optparse作爲它們的參數庫。它有類型作爲參數之一Argparse有類型作爲選擇
type = "choice"
我想轉換我的代碼有argparse。我應該輸入什麼類型?如果我添加類型=選擇它拋出一個錯誤:
NameError: global name 'choice' is not defined
應該是什麼類型的值,在這裏如果我使用argparse?
我有一些舊的代碼,它有optparse作爲它們的參數庫。它有類型作爲參數之一Argparse有類型作爲選擇
type = "choice"
我想轉換我的代碼有argparse。我應該輸入什麼類型?如果我添加類型=選擇它拋出一個錯誤:
NameError: global name 'choice' is not defined
應該是什麼類型的值,在這裏如果我使用argparse?
在optparse
,choice
類型只是string
的特殊形式。從optparse
documenattion:
"choice"
options are a subtype of"string"
options. Thechoices
option attribute (a sequence of strings) defines the set of allowed option arguments.
你並不需要指定本作中一個類型;所有你需要提供的是選擇。如果您想明確說明,則完全刪除type
參數,或將其設置爲str
。
另請參閱choices documentation;這比optparse
靈活得多,因爲這也允許選擇是字符串以外的類型。
但是,當我添加str或remove類型的時候,我運行我的代碼這樣說:python try1.py --help然後它打印幫助信息特定於該參數以及選擇。當我使用optparse進行工作時,我沒有遇到這樣的問題,我只能獲得特定於該論點的幫助信息。 – blackmamba
@wannaC:我不確定你在這裏問什麼。 'argparse'工作方式不同,它永遠不會產生完全相同的輸出。 –
@wannaC:這聽起來像一個*不同的問題;你使用'type'參數的問題已經解決了,不是嗎? –