0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

こんにちは!
今回も、備忘録を兼ねて。

Pythonでコードを書くとき、処理をまとめたり、再利用したりするために関数を使いますよね。
関数は、特定の処理に名前を付けたもので、必要な時に呼び出して使うことができます。

それでは、基本から見ていきましょう。

関数定義の基本

Pythonで関数を定義するには、defキーワードを使います。基本的な構文は以下の通り。

def 関数名(引数1, 引数2, ...):
  """
  関数の説明(ドキュメンテーション文字列)
  """
  # 関数で行う処理
  
  return 戻り値 
  • 関数名: 関数に付ける名前。分かりやすい名前を付けましょう。
  • 引数: 関数に渡す値。複数の引数を指定する場合はカンマで区切ります。
  • ドキュメンテーション文字列: 関数の説明を記述します。省略可能です。
  • 処理: 関数が行う処理を記述します。インデントを付けて記述します。
  • 戻り値: 関数の実行結果として返す値。return文で指定します。省略可能です。

簡単な関数定義の例を見てみましょう。

def greet(name):
  """
  挨拶をする関数
  """
  print(f"こんにちは、{name}さん!")

greet("やました")  # 出力: こんにちは、やましたさん!

引数について

引数のデフォルト値

関数定義時に、引数にデフォルト値を設定しておくことができます。
デフォルト値が設定された引数は、関数呼び出し時に値が渡されかった場合に、デフォルト値が使用します。

def greet(name="ゲスト"):
  """
  挨拶をする関数
  """
  print(f"こんにちは、{name}さん!")

greet()       # 出力: こんにちは、ゲストさん!
greet("やました")  # 出力: こんにちは、やましたさん!

可変長引数

関数定義時に引数の数を固定せずに、任意の数の引数を受け取れるようにしたい場合があります。
そのような場合には、アスタリスク(*)を使って可変長引数を定義します。

def sum_all(*args):
  """
  すべての引数の和を返す関数
  """
  total = 0
  for num in args:
    total += num
  return total

print(sum_all(1, 2, 3))        # 出力: 6
print(sum_all(10, 20, 30, 40)) # 出力: 100

可変長引数はタプルとして扱われます。
タプルについては こちら を参照してください。

戻り値について

複数の値を返す

Pythonの関数は、複数の値を返すことができます。

def calculate(x, y):
  """
  xとyの和と積を返す関数
  """
  sum_xy = x + y
  product_xy = x * y
  return sum_xy, product_xy

s, p = calculate(3, 4)
print(f"和: {s}, 積: {p}") # 出力: 和: 7, 積: 12

関数をより便利に使う

lambda式を使った無名関数

簡単な処理を行う関数を、その場で定義したい場合には、lambda式を使うと便利です。lambda式を使うと、関数定義を1行で書くことができます。

# lambda式を使った無名関数
square = lambda x: x ** 2 

print(square(5)) # 出力: 25

関数を引数として渡す

Pythonでは、関数を別の関数の引数として渡すことができます。

def apply_operation(func, x, y):
  """
  渡された関数にxとyを引数として渡して実行する
  """
  result = func(x, y)
  return result

def add(x, y):
  return x + y

def multiply(x, y):
  return x * y

print(apply_operation(add, 3, 5))      # 出力: 8
print(apply_operation(multiply, 3, 5)) # 出力: 15

まとめ

今回は、Pythonの関数の基本的な定義方法から、引数、戻り値、そして応用的な使い方まで解説しました。

私もまだまだ勉強中ですが、関数の使い方を理解し、より効率的な開発を行いましょう!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?