[解決済み] シンプルなargparseの例題募集:1引数、3結果
2022-03-16 17:30:24
質問
その ドキュメンテーション のための argparse Python モジュール とはいえ、私の小さな初心者の脳みそでは、今ひとつピンとこない。私は、コマンドラインで計算をしたり、画面上の行の書式設定をいじったり、オプション文字を変更したりする必要はありません。私がしたいのは argがAならこうして、Bならこうして、どれもダメならヘルプを表示して終了"。 .
解決するには?
元の質問に対する私の理解は、2つあります。まず、最も単純なargparseの例という点では、ここで見たことがないことに驚いています。もちろん、死ぬほど単純であるために、それはまた、小さなパワーですべてのオーバーヘッドですが、それはあなたが始めるかもしれません。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("a")
args = parser.parse_args()
if args.a == 'magic.name':
print 'You nailed it!'
しかし、この位置の引数が必要になったのです。このプログラムを起動するときにこれを省くと、引数が足りないというエラーが出ます。これが、最初の質問の2番目の部分につながる。Matt Wilkieは、単一の オプション 引数には、名前付きラベル(--オプション・ラベル)を使用しないでください。私の提案は、上記のコードを次のように修正することです。
...
parser.add_argument("a", nargs='?', default="check_string_for_empty")
...
if args.a == 'check_string_for_empty':
print 'I can tell that no argument was given and I can deal with that here.'
elif args.a == 'magic.name':
print 'You nailed it!'
else:
print args.a
もっとエレガントなソリューションがあるかもしれませんが、これは機能的で最小限のものです。
関連
-
[解決済み】django インポートエラー - core.managementという名前のモジュールがない
-
[解決済み] argparseによるブーリアン値のパース
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] Argparse オプションの位置引数?
-
[解決済み] argparseでコマンドラインの引数としてリストを渡すにはどうしたらいいですか?
-
[解決済み] Python argparse 引数なしのコマンドラインフラグ
-
[解決済み] argparseのヘルプテキストに改行を挿入するには?
-
[解決済み】Argparse: デフォルト値を'--help'に含める方法?
-
[解決済み】Argparse: 必須引数が「オプション引数」の下に表示される?
-
[解決済み】argparseモジュール 引数なしでオプションを追加する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Pythonによるjieba分割ライブラリ
-
Python 可視化 big_screen ライブラリ サンプル 詳細
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
Pythonの画像ファイル処理用ライブラリ「Pillow」(グラフィックの詳細)
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】「OverflowError: Python int too large to convert to C long" on windows but not mac
-
[解決済み】django インポートエラー - core.managementという名前のモジュールがない
-
[解決済み] Argparse オプションの位置引数?
-
[解決済み】なぜoptparseではなくargparseを使用するのですか?