Python
 Computer >> コンピューター >  >> プログラミング >> Python

【Python入門】関数からリストを返す基本的な方法とサンプルコード

Pythonでは、関数からリストを返す方法がいくつかあります。最も基本的なのは、関数内でリストを作成し、return文でそのリストを返すという方法です。

基本例:forループでリストを生成して返す

以下の例では、0から9までの数値を順番にリストへ追加し、完成したリストを返す関数 retList() を定義しています。

def retList():
    result = []
    for i in range(0, 10):
        result.append(i)
    return result

a = retList()
print(a)

実行結果

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

より簡潔な書き方:リスト内包表記

同じ処理は、リスト内包表記を使うことで1行でシンプルに記述できます。

def retList():
    return [i for i in range(10)]

注意点

変数名として list を使用するのは避けましょう。list はPythonの組み込み型の名前であり、これを変数として上書きすると、後続のコードで予期しないエラーが発生する原因となります。上記の例のように、result など意味のわかる別の名前を使うことをおすすめします。

  1. Pythonで関数から別の関数を返す方法をわかりやすく解説

    Pythonは第一級関数(first-class functions)をサポートしているプログラミング言語です。実際、Pythonにおけるすべての関数は第一級オブジェクトとして扱われます。 これは何を意味するのでしょうか。具体的には、以下のようなことが可能になります。 関数の中から別の関数を返す(returnする) 関数をリストや辞書などのコレクションに格納する 関数を、通常の変数やオブジェクトと同じように扱う さらに、関数の中で別の関数を定義し、それを返すことさえできます。これはクロージャ(closure)と呼ばれる強力なテクニックの基礎にもなる概念です。 サンプルコード:関数内で関数を

  2. 実行時にPython関数を動的に定義・実行する方法

    Pythonでは、標準ライブラリの types モジュールが提供する types.FunctionType() を利用することで、プログラムの実行時(ランタイム)に関数を動的に定義し、そのまま呼び出すことができます。 動的に関数を作成する手順 コード文字列から関数オブジェクトを生成するには、以下の手順を行います。 types モジュールをインポートします。 実行したいコードを文字列として用意し、組み込み関数 compile() でコードオブジェクトにコンパイルします。 コンパイル済みのコードオブジェクトと、グローバル名前空間となる辞書を types.FunctionType() に渡して、