[Python] for文でリストに値を格納する方法
Pythonでは、for文を使用してリストに値を格納することができます。
リストに値を追加するには、append()メソッドを使用します。
例えば、for文を使って1から5までの数値をリストに追加する場合、append()メソッドを用いて各数値をリストに追加します。
この方法は、リストの要素を動的に増やしたい場合に非常に便利です。
for文を使ったリストへの値の格納
Pythonのfor文は、リストに値を追加する際に非常に便利です。
ここでは、基本的な使い方から応用的な方法までを解説します。
for文でリストに値を追加する基本例
for文を使ってリストに値を追加する基本的な方法を見てみましょう。
# 空のリストを作成
numbers = []
# 1から5までの数字をリストに追加
for i in range(1, 6):
    numbers.append(i)
print(numbers)  # 出力: [1, 2, 3, 4, 5]この例では、range(1, 6)を使って1から5までの数字を生成し、それをappendメソッドでリストnumbersに追加しています。
range関数を使ったリストへの値の格納
range関数は、指定した範囲の整数を生成するために使用されます。
これをfor文と組み合わせることで、リストに連続した値を簡単に格納できます。
# 空のリストを作成
even_numbers = []
# 2から10までの偶数をリストに追加
for i in range(2, 11, 2):
    even_numbers.append(i)
print(even_numbers)  # 出力: [2, 4, 6, 8, 10]この例では、range(2, 11, 2)を使って2から10までの偶数を生成し、リストeven_numbersに追加しています。
rangeの第三引数はステップ数を指定します。
条件付きでリストに値を追加する方法
for文を使って、特定の条件を満たす値のみをリストに追加することも可能です。
# 空のリストを作成
squared_numbers = []
# 1から10までの数字のうち、平方数をリストに追加
for i in range(1, 11):
    if i ** 0.5 == int(i ** 0.5):
        squared_numbers.append(i)
print(squared_numbers)  # 出力: [1, 4, 9]この例では、1から10までの数字の中で平方数(1, 4, 9)のみをリストsquared_numbersに追加しています。
条件式i ** 0.5 == int(i ** 0.5)を使って平方数を判定しています。
応用例
for文を使ったリストへの値の格納は、基本的な使い方だけでなく、応用的な方法も多く存在します。
ここでは、いくつかの応用例を紹介します。
ネストされたfor文でリストに値を格納する
ネストされたfor文を使うことで、2次元リストや複雑なデータ構造を作成することができます。
# 空の2次元リストを作成
matrix = []
# 3x3の行列を作成
for i in range(3):
    row = []
    for j in range(3):
        row.append(i * j)
    matrix.append(row)
print(matrix)  # 出力: [[0, 0, 0], [0, 1, 2], [0, 2, 4]]この例では、ネストされたfor文を使って3×3の行列を作成しています。
外側のfor文で行を、内側のfor文で列を生成し、それぞれの要素を計算してリストに追加しています。
リスト内包表記を使った効率的な値の格納
リスト内包表記を使うと、for文を使ったリストの生成をより簡潔に記述できます。
# 1から5までの数字をリストに追加
numbers = [i for i in range(1, 6)]
print(numbers)  # 出力: [1, 2, 3, 4, 5]この例では、リスト内包表記を使って1から5までの数字をリストに追加しています。
リスト内包表記は、コードを短くし、可読性を向上させるのに役立ちます。
複数のリストに同時に値を格納する方法
複数のリストに同時に値を格納する場合、zip関数を使うと便利です。
# 2つの空のリストを作成
list1 = []
list2 = []
# 1から5までの数字を2つのリストに同時に追加
for i, j in zip(range(1, 6), range(6, 11)):
    list1.append(i)
    list2.append(j)
print(list1)  # 出力: [1, 2, 3, 4, 5]
print(list2)  # 出力: [6, 7, 8, 9, 10]この例では、zip関数を使って2つの範囲を同時にループし、それぞれのリストに値を追加しています。
zip関数は、複数のイテラブルを同時に処理するのに便利です。
まとめ
Pythonのfor文を使ったリストへの値の格納方法は、基本から応用まで多岐にわたります。
この記事では、for文の基本的な使い方から、リスト内包表記やネストされたfor文、複数のリストへの同時格納などの応用例を紹介しました。
これらの知識を活用して、より効率的で読みやすいコードを書くことを目指しましょう。
 
![[Python] 「While True:」とは?無限ループの使い方と注意点を解説](https://af-e.net/wp-content/uploads/2024/10/thumbnail-46684.png)
![[Python] for文でのin演算子の使い方 – リストやタプルのループ処理](https://af-e.net/wp-content/uploads/2024/10/thumbnail-46683.png)
![[Python] for文の使い方をわかりやすく解説](https://af-e.net/wp-content/uploads/2024/09/thumbnail-41142.png)
![[Python] for文内のエラーをスキップする](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9093.png)
![[Python] continue文でエラーが起きる原因と対処方法](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9092.png)
![[Python]  ‘int’ object is not iterableエラーの解消方法](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9091.png)
![[Python] while文で無限ループを実装する](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9090.png)
![[Python] while文を途中で抜ける方法](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9089.png)
![[Python] while文の条件式の書き方](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9088.png)
![[Python] while文の使い方](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9087.png)
![[Python] while文で合計を求める](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9086.png)
![[Python] リストをwhileループで処理する](https://af-e.net/wp-content/uploads/2024/08/thumbnail-9085.png)