0
コマンドプロンプトから実行するコードを記述しました。コマンドから引数を取っています。Pythonのインタラクティブシステム引数
私は何を試していますか?
start_date = sys.argv[1]
end_date = sys.argv[2]
end_date2 = datetime.strptime(end_date, "%d %b %Y").date()
start_date2 = datetime.strptime(start_date, "%d %b %Y").date()
--- Do Something ---
と私は、このようにスクリプトを実行しています:
python myscript.py "19 Aug 2016" "19 Sep 2016"
これはスムーズに動作します。しかし、私がスクリプトでやっていることは条件が必要です: - start_date2 > end_date2
私は上記の条件が満たされていないので、これを制限するifステートメントとexit()
を使用しています。
私の質問: -
それが上記の条件が満たされない場合、引数をリセットすることが可能です?インタラクティブなコードのようなの
if start_date2 < end_date2 :
re enter the arguments from the command prompt
without stopping the code and take the new arguments and ignore the wrong ones.
種類:よう
何か。
私は他の人々によっても "argparse"と勧められています。しかし、コードのパフォーマンスに大きな違いはありません。それがどういう違いがあるのか教えてください。 –
はい。 Argparseは、ユーザーからデータを取得するために作られたもので、ヘルプの表示、引数の指定、フォーマットのチェック、適切なフォーマットへの変換、データを取得するための良いAPIを提供します(例args.date_fromが良いthen sys.argv [1])...試してみてください:) – sokoli