簡體   English   中英

如何解析命令行參數中的標志?

[英]How can I parse flags in command line argument?

我必須在 Python 中實現一個 --pos 標志並創建一個新條件(如果存在),但是當我在命令行參數中輸入它時 argparse 無法識別它。

parser = argparse.ArgumentParser()
parser.add_argument('lang', type=str, help='Language')
parser.add_argument('mode', help='the mode you want to output the results with')
parser.add_argument('flag', help='the flag that triggers pos-tags')
args = parser.parse_args()

所以當我運行命令時:

python3 pi.py en lemma --pos

我收到以下錯誤消息:

error: unrecognized arguments: --pos

有沒有辦法將該標志作為第三個參數?

在您的代碼中,您正在定義一個“位置參數”,這不是您想要的。 如果你想實現一個標志(真/假) --pos就這樣做。

...
parser.add_argument('--pos', action='store_true', help='the flag that triggers pos-tags')
args = parser.parse_args()

if args.pos:
    ...

並將其稱為

python3 pi.py en lemma --pos

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM