Pythonでは、コマンドライン引数を扱うための2つの主要なモジュールがあります:getopt
とargparse
。
getopt
getopt
モジュールは、コマンドライン引数を解析するための基本的なツールです。以下に基本的な使用方法を示します:
import getopt
import sys
def main():
if not len(sys.argv[1:]):
print("argument is nothing")
sys.exit()
text = sys.argv[1:]
try:
opts, args = getopt.getopt(
text,
"t:p:m:h",
["target=", "port=", "message=", "hogehoge"]
)
print("Options:", opts)
print("Arguments:", args)
except getopt.GetoptError as err:
print(str(err))
main()
print("finished")
このコードでは、getopt.getopt
関数を使用してコマンドライン引数を解析しています。
argparse
一方、argparse
モジュールは、より高度なコマンドライン引数の解析を可能にします。以下に基本的な使用方法を示します:
import argparse
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('integers', metavar='N', type=int, nargs='+', help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const', const=sum, default=max, help='sum the integers (default: find the max)')
args = parser.parse_args()
print(args.accumulate(args.integers))
このコードでは、argparse.ArgumentParser
クラスを使用してコマンドライン引数を解析しています。
以上がPythonでコマンドライン引数を扱うためのgetopt
とargparse
の基本的な使い方です。これらのモジュールを使うことで、Pythonスクリプトに対するコマンドライン引数の解析と使用が容易になります。