新しい本を読むと知見が広がる
森巧尚さんが書いた「ゲーム作りで楽しく学ぶPythonのきほん」という本を読んでいます。
【PR】
本の中では当たり前と思われる誤差の話が出ていまして、「そういえば気にしてなかった!」と反省してます。
rangeで範囲を決める
書式によって表記が変わります。
①print(range(3)) と入力したら 出力はrange(0, 3)と出てきます。分かりにくい表現ですね。
0から始まって3で終わる数という意味です。そこで次のリス表示がよく使われます。
②print(list(range(3)))と入力すると上記のレンジの数に対して表示するので、リストとしては [0, 1, 2]が表示されます。この方が分かり易いですね。更にはリストの始点と終点をしてすることも出来ます。2で始まり5で終わるリストを考えたい時は
print(list(range(2, 5)))と入力します。すると [2, 3, 4, 5]と出力されるのです。
基本的にFOR文は無限に繰り返しができますがrangeと組み合わせることで範囲を指定出来ます!!
forの中にif文を入れる
そしてFor文の中に色々なパターンの要素を入れることが出来ます。以下はFOR文(Forループ)の中IF文を組み合わせた例です。
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# forループでリストの要素を取り出し、
# 条件に合致するものだけを表示する例
for num in numbers:
if num % 2 == 0: # 偶数の場合のみ表示
print(f"{num} は偶数です")
else:
print(f"{num} は奇数です")
この例では、リストnumbers
の各要素を取り出して、その数が偶数か奇数かによってメッセージを表示しています。if
文がnum % 2 == 0
という条件を満たす場合には、偶数のメッセージが表示されます。それ以外の場合には、奇数のメッセージが表示されます。
forの中に forを入れ込む
複雑なパターンや多次元のデータに対して効果的な処理を行うことができます。以下は、基本的な構文です。
for 外側の変数 in 外側のイテラブル:
# 外側のループの本体
for 内側の変数 in 内側のイテラブル:
# 内側のループの本体
例として、2次元リストを扱う場合を考えてみましょう。
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for element in row:
print(element, end=' ')
print()
このコードでは、外側のループが各行を、内側のループが各行の要素を処理しています。この結果、2次元リストの各要素が順番に表示されます。
もし具体的な状況やデータに対する処理があれば、それに合わせてforループを入れ子にする形を構築することができます。
リストからランダムに選ぶ
〆最後に〆
以上、間違い・ご意見は
次のアドレスまでお願いします。
最近は全て返信出来てませんが
適時、返信して改定をします。
nowkouji226@gmail.com
また、この記事はChatGPT社のOpenAI
の情報を参考として作成しています。
【全体の纏め記事へ】
コメント