Python 引数の使い方

Pythonを使っていく上で、必要となる引数の使い方です。関数を作るときなど重要な役割を果たします。

基本的な使い方を解説しておりますので参考にしていただければと思います。


引数の使い方

本件では「sys.argv」を使って引数を扱います。

まずは以下コードを見てください。


import sys

print(sys.argv[1])
print(sys.argv[2])
print(sys.argv[3])

この内容のファイルを「test.py」としてデスクトップに保存して、引数を使って実行します。

「one」「two」「three」が引数です

ただし、この書き方だと引数が3つないとエラーとなるので書き方に注意が必要です。

引数が必ず3つなかったため、エラーとなった

取りたい分だけ「argv[]」を記述して使います。「argv[0]」は利用しません。

必ず「argv[1]」から利用しましょう。

※「argv[0]」は実行ファイルのファイルパスを表示します


・関数内での引数

続いて、関数内で利用する引数の設定の仕方を解説します。

以下のコードをご覧ください。


def test1(test2,test3):
    print(test2,test3)


test1("テストですが、","テストですよ")
テストですが、 テストですよ

test1という関数は引数「test2」「test3」を取りますよという意味です。この引数は分かり易い文字列にすると扱いやすいでしょう。

設定した引数以下で実行すると、やはりエラーとなります。


test1("1個だけ")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: test1() missing 1 required positional argument: 'test3'

複数扱いたい場合は、以下のように記述します。


def test10(*args):
    print(*args)

test10("test1","test2","test3")
test1 test2 test3

受けた引数は、タプルとして扱われます。

また、一部を固定、そのほかをタプルとして引き受けるような使い方もできます。


def test20(test1,test2,*args):
    print(test1 + "one.")
    print(test2 + "two.")
    print(*args)

test20("test1","test2","test3","test4","test5")
test1one.
test2two.
test3 test4 test5

上記引数の使い方は基本となりますので、全て覚えてしまいましょう。

トップページへ戻る