【Python入門】6章のまとめ

 ここでは、Pythonの関数や変数のスコープに関する基本的な概念を振り返り、これまでの6章の学習内容を整理します。関数の定義方法、戻り値としてのreturn文、各種引数(位置引数、デフォルト値付き引数、可変長引数、位置専用引数、キーワード専用引数)の指定方法、そして変数のスコープとグローバル変数の扱いについて、具体的な例や表を用いて解説します。
 さらに、次のコンテンツでは、6章の総まとめとして、これらの知識を実践で確認する演習プログラムを用意しています。ここでの復習を通じて、各概念の理解をより一層深めていきましょう。

1.関数の定義と戻り値

1.1. 関数の定義

 関数は、再利用可能な処理の塊として定義され、defキーワードを使って記述します。基本的な構文は以下の通りです。

構文要素説明
def関数定義の開始を示すキーワード
関数名関数を識別するための名前
(引数)関数に渡す値(パラメータ)のリスト
:ブロック開始を示す記号
関数の処理内容インデントされたブロックで記述される処理

例):

def greet(name):
    print("Hello, " + name + "!")

1.2. 戻り値を返すreturn文

 関数は、return文を使って呼び出し元に値を返すことができます。return文が実行されると、関数内の処理はそこで終了し、指定した値が返されます。

キーワード説明
return関数の処理結果を返し、処理を終了するための文

例):

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

2.関数の引数とその指定方法

2.1. 位置引数とデフォルト値

 関数に渡す引数は、呼び出し時の順番により位置引数として割り当てられます。また、引数にデフォルト値を設定することで、省略可能にすることができます。

引数の種類説明
位置引数渡された順番に従って値が割り当てられる引数
デフォルト値付き引数引数に初期値を設定し、呼び出し時に値を省略できる引数

例):

def power(base, exponent=2):
    return base ** exponent

2.2. 可変長引数、位置専用引数とキーワード専用引数

 Pythonでは、引数の数が固定されていない場合に備えて可変長引数を使用することができます。また、Python 3.8以降では、位置専用引数やキーワード専用引数を明示的に指定する構文が導入され、引数の受け渡し方法に柔軟性が加わりました。

引数の種類記法説明
可変長位置引数*args複数の位置引数をタプルとして受け取る。
可変長キーワード引数**kwargs複数のキーワード引数を辞書として受け取る。
位置専用引数/この記号より前の引数は位置引数としてのみ渡す。
キーワード専用引数*この記号より後の引数はキーワード引数としてのみ渡す。

例):

def example(a, b, /, c, d, *, e, f):
    print(a, b, c, d, e, f)

3.変数のスコープとグローバル変数

3.1. 変数のスコープ

 変数のスコープとは、変数が有効な範囲を指します。関数内で定義された変数はローカルスコープに属し、関数の外部からは参照できません。一方、関数外で定義された変数はグローバルスコープに属し、プログラム全体で有効です。

スコープの種類説明
ローカルスコープ関数内で定義された変数が有効な範囲
グローバルスコーププログラム全体で有効な変数が定義される範囲

3.2. グローバル変数とglobal文

 グローバル変数は、プログラム全体で共通して使用される変数です。関数内でグローバル変数を変更する場合は、global文を使って、対象の変数がグローバルスコープに存在することを明示する必要があります。

文法要素説明
global関数内でグローバル変数を参照・変更するための宣言

例):

x = 10

def modify():
    global x
    x = 20

modify()
print(x)  # 出力: 20

まとめ

 以上で、関数の定義、戻り値、各種引数の指定方法、そして変数のスコープとグローバル変数に関する基本的な概念を解説しました。これらの内容は、Pythonで効果的なプログラムを構築するための基礎となります。次のコンテンツでは、これらの知識を実践的に確認できる演習プログラムを通じて、より深い理解を目指していきます。各トピックの特性を意識しながら、実際のコードを書いて動作を確かめることで、学習の定着を図りましょう。