HOWTO · Python

Python で奇数のリストを作成する

このチュートリアルでは、Python で奇数のリストを作成する方法を示します。

このページの内容

この記事では、Python で奇数のリストを作成するさまざまな方法を紹介します。

Python の奇数

奇数の定義には 2つの方法があり、1つ目は整数が 2 で割り切れない場合です。もう 1つの方法は、整数を 2 で割ろうとして余りが 1 である場合です。

たとえば、1、5、9、11、45 などはすべて奇数です。 リストから奇数を取得する方法はたくさんありますが、ここではいくつかだけ説明します。

for ループを使用して Python で奇数を取得する

奇数を 2 で割ろうとすると、余りは 1 になります。偶数を 2 で割ろうとすると、余りは 0 になります。

この概念を使用して、for ループを使用して奇数のリストを作成します。 以下の例では、num を受け取る関数 ODD_NUMBERS を定義し、それを範囲として使用して、その範囲から奇数を取得します。

コード:

# python
def ODD_NUMBERS(num):
    ODD = []
    for i in range(num):
        if i % 2 == 1:
            ODD.append(i)
    return ODD


num = 101

print("ODD Number: ", ODD_NUMBERS(num))

出力:

Python で for ループを使用する奇数

while ループを使用して Python で奇数を取得する

While Loop を使用して、奇数のリストを作成します。 最初に、範囲の max 値を取る関数 ODD_NUMBERS を定義し、すべての奇数を格納する配列 ODD を定義します。

以下に示すように、while ループごとにインクリメントする number という別の変数を作成します。

コード:

# python
def ODD_NUMBERS(max):
    ODD = []
    number = 1
    while number <= max:
        if number % 2 != 0:
            ODD.append(number)
        number = number + 1
    print("ODD Number: ", ODD)


max = 10

ODD_NUMBERS(max)

出力:

Python で while ループを使用した奇数

リスト内包表記を使用して Python で奇数を取得する

簡単でコンパクトな構文を使用して、文字列または別のリストからリストを作成できます。 リスト内包表記は、既存のリストのすべての要素に対して特定の機能を実行することによって、新しいリストを作成するもう 1つの方法です。

リスト内包表記を使用すると、for ループよりもはるかに高速です。 同じ概念を使用して、奇数のリストを作成します。

コード:

# python
odd_list = [x for x in range(100) if x % 2 != 0]
print("ODD_NUMBERS :", odd_list)

出力:

Python でリスト内包表記を使用した奇数

リスト内包表記を使用して、100 の範囲内の奇数のリストを作成するコードを 1 行だけ作成しました。

Python in Python でラムダ式を使用して奇数を取得する

Python では、ラムダ関数 を使用して、指定された範囲から奇数を取得できます。 ラムダ関数 は名前のない単一行の関数であり、任意の数の引数を取ることができますが、単一行の式のみで構成されています。

同じ概念を使用してみましょうが、整数のリストを使用します。 奇数を特定し、新しいリストに保存します。

コード:

# python
list1 = [20, 23, 48, 85, 96, 33, 51]

odd_number = list(filter(lambda x: (x % 2 != 0), list1))

print("Odd numbers in the list: ", odd_number)

出力:

Python でラムダ関数を使用した奇数