【Python】コード実行時に値を引き渡す方法【コマンドライン引数】

Python

この記事では、Pythonのコマンドライン引数の使い方を解説します。コマンドライン引数を使うことでPythonのプログラム起動時に値を引き渡すことができます。

それでは、コマンドライン引数の使い方をサンプルコードを交えて見ていきましょう!

コマンドライン引数の使い方

コマンドライン引数を使用するには、sysモジュールのargvリストを参照します。

import sys

sys.argv

argv[0]には、スクリプト名が格納されます。フルパス名かどうかはOSによって異なります。argv[1]以降に、コマンドライン引数が格納されています。

サンプル

実際にコマンドライン引数を受け取ってみましょう!

main.py

import sys

# 受け取ったコマンドライン引数をargs変数に代入
args = sys.argv

# スクリプト名
print(args[0])

# 第1引数
print(args[1])

# 第2引数
print(args[2])

このコードをターミナルから実行してみましょう!実行時に「aaa」と「bbb」という値を渡しています。

実行

python3 main.py aaa bbb

実行結果

main.py
aaa
bbb

実行時オプションとして使う

以下のコードは、コマンドライン引数に値が渡されていればfor文が処理され、渡された値がオプションかどうかを判定しています。ちなみに、「-」から始まる文字列をオプションとしています。

main.py

import sys

args = sys.argv

for value in args[1:]:
    if value[0] == '-':
        if value[1] == 'a':
            print('オプション -a')
        elif value[1] == 's':
            print('オプション -s')

実行結果

user$ python3 main.py -a
オプション -a
user$ python3 main.py -s
オプション -s
user$ python3 main.py -a -s
オプション -a
オプション -s

このように、コードを実行する際にオプションを付与することができます。

タイトルとURLをコピーしました