#9 Pythonで学ぶ関数の基本

同じ処理をひとまとめにして、名前を付けて呼び出せるようにする仕組みを「関数」と呼びます。この記事では、Pythonにおける関数の基本的な書き方と、便利な引数の渡し方を解説します。

関数を作ってみる

Pythonではdefというキーワードを使って関数を作ります。

def greet(name):
    print(f"こんにちは、{name}さん")

greet("太郎")

defの後ろに関数名、かっこの中に受け取る値(引数)を書き、コロンの後で改行してインデントした部分が処理内容になります。

値を返す関数

関数の結果を呼び出し元で使いたい場合は、returnを使います。

def add(a, b):
    return a + b

result = add(3, 5)
print(result) # 8

デフォルト引数という便利な機能

Pythonの関数は、引数にあらかじめ既定値を設定しておけます。

def greet(name="ゲスト"):
    print(f"こんにちは、{name}さん")

greet() # こんにちは、ゲストさん

呼び出し時に値を省略すると、既定値が使われます。

キーワード引数で分かりやすく渡す

引数が多い関数を呼び出す際、引数名=値の形で渡すと、どの値が何を表しているか分かりやすくなります。

def create_user(name, age, job):
    print(f"{name}({age}歳・{job})")

create_user(name="太郎", age=20, job="学生")

この書き方をすれば、引数の順番を気にせず渡すこともできます。

可変長引数

いくつ引数が渡されるか決まっていない場合は、*を付けるとタプルとしてまとめて受け取れます。

def sum_all(*numbers):
    return sum(numbers)

print(sum_all(1, 2, 3, 4)) # 10

Pythonならではの注意点

Pythonの関数は、型を書かなくても動きます。そのため、add("3", "5")のように文字列を渡してしまっても、実行するまでエラーに気づけないことがあります。関数がどんな型を想定しているか、コメントや名前で明確にしておくと親切です。def add(a: int, b: int) -> int:のように「型ヒント」を書く方法もあり、実行時のチェックにはなりませんが、エディタが誤った型の使用を警告してくれるようになります。

まとめ

Pythonの関数はdefで定義し、returnで値を返します。デフォルト引数やキーワード引数、可変長引数(*)を活用すると、呼び出し側の手間を減らせます。


本ページはプロモーションを含みます。

参考書籍(PR)

Pythonをもっと学びたい方には「スッキリわかるPython入門 第2版」がおすすめです。


PR

コードを書かずに自動化したい方へ

「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。

コメント

このブログの人気の投稿

#25 Rustで学ぶAI API(ChatGPT等)の呼び出し方の基本

#8 C++で学ぶ文字列操作の基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本