回答:
import sys
print(sys.argv)
より具体的には、実行するとpython example.py one two three
:
>>> import sys
>>> print(sys.argv)
['example.py', 'one', 'two', 'three']
import sys
sys.argv[1:]
引数のリストが表示されます(Pythonファイルの名前は含まれません)
[1:]
意味ですか?
[1:]
は、最初の引数がsys.argv
デフォルトで、たとえば実行しているPythonファイルの名前であるためですtestrun.py
。
argparse
Python 2.7以降に付属しているものを強くお勧めします。
argparse
モジュールは、ボイラープレートコードを減らし、あなたのコードはより堅牢になり、モジュールは(サブコマンドを含む)すべての標準的なユースケースを処理するため、あなたのためのヘルプと使い方を生成し、チェックし、ユーザの入力サニタイズ-あなたはときを心配する必要はすべてのものをsys.argv
アプローチを使用しています。そしてそれは無料です(組み込み)。
ここに小さな例があります:
import argparse
parser = argparse.ArgumentParser("simple_example")
parser.add_argument("counter", help="An integer will be increased by 1 and printed.", type=int)
args = parser.parse_args()
print(args.counter + 1)
と出力 python prog.py -h
usage: simple_example [-h] counter
positional arguments:
counter counter will be increased by 1 and printed.
optional arguments:
-h, --help show this help message and exit
そしてpython prog.py 1
あなたが期待するように:
2
parser.add_argument('var3', nargs='?', type=int, default=3)
。var3はオプションのパラメーターです。コマンドラインで値を指定しない場合、コードでvar3にアクセスできます。var3のデフォルト値= 3