2015-06-17 93 views
5

我想這三種情況來區分:argparse可選值參數

  • 的標誌是不存在的所有python example.py;
  • 該標誌存在但沒有值python example.py -t;和
  • 該國旗是存在的,其價值爲python example.py -t ~/some/path

我該怎麼用Python​​做這個?前兩種情況將由action='store_true'涵蓋,但第三種情況變爲無效。

回答

6

你可以用nargs='?'做到這一點:

一個參數將在命令行中如果有可能被消耗掉,並 生產作爲單個項目。如果沒有命令行參數,則會生成默認值 。請注意,對於可選參數 還有一個額外的情況 - 選項字符串存在,但不包含 ,後跟命令行參數。在這種情況下,將生成const 的值。

你的三個情況下會給予:

  1. default值;
  2. const值;分別
  3. '~/some/path'

相關問題