\r\n\r\n

Pythonでforループを使う方法

forループはプログラミングの基本です。

他のプログラミング言語と同様に、Pythonでのループ処理は、反復的なコードを書くことを避けるための良い方法です。しかし、Pythonのwhileループとは異なり、forループは決定論的な制御フロー文であり、系列の各項目へのアクセスをより多く行うことができます。

Python初心者の方でも、すでにPythonを使ったことがある方でも、forループをしっかり理解することが、配列に関する問題を解決するカギとなります。ここでは、Pythonのforループの仕組みと、コーディングの課題を解決するためにforループをどのように利用できるかの例を見ていきます。

Pythonのforループの仕組み

Pythonのforループは、配列のシーケンスをトラバースすることで動作します。基本的には、文字列、リスト、タプル、辞書、コレクションなどのシーケンスを扱うときに便利である。Pythonでは、inキーワードは通常forループの後に続きます。

forループは、どのプログラミング言語でも似たような性質を持っています。例えば、構文の違いはありますが、JavaのForループの特性は、PythonのForループの特性と似たような働きをします。

Pythonのforループの一般的な構文は以下のとおりです。

for new_variable in parent_variable:execute some statements

先に述べたように、whileループと異なり、forループはストリーム内での制御が可能なため、より強力である。

理解を深めるために、forループは通常、次のような例文になります。"クラスで出会った男の子1人につき1つ、それ以外はただの女の子のクラスだと書き留める。"

あるクラスで出会った男の子一人につき一枚書いてください、というシンプルな文章です。これは連続したループです。しかし、その際にforループを開始するには、少年に遭遇する必要がある。そうでない場合は、else文を書きます。

もし、上の文にelse条件がなかったら、何も書きません。これは、空の配列であることを意味します。

Pythonのforループの使い方:例

では、Pythonのforループの使い方の実例を見てみましょう。

次のスニペットは、リスト内の各項目を出力します。

items = ["shoe", "bag", "shirts", "lamp"]for i in items:print(i)

また、上記のコードを修正して、"a "の文字が含まれる任意の項目を出力することも可能です。

items = ["shoe", "bag", "shirts", "lamp"]for i in items:if "a" in i: print(i)

Pythonのforループでも、直接else文が使われています。

b=[2, 3, 5, 6]for i in b:print(i)else:print("Loop has ended")

また、break文を使ってforループの流れを変更することもできます。

b=[2, 3, 5, 6]for i in b:if i>3:breakprint(i)

continue キーワードは、for ループと組み合わせて使用することもできます。

b=[2, 3, 5, 6]for i in b:if i>3:continueprint(i)

Pythonでリストと文字列テキストにforループを使用する

次に、1から100までのすべての正の整数を出力する次のコードを見てください。そのために、まずPythonの組み込み範囲関数を使って、1から100までの数字のリストを作成します。

for x in range(1, 101):print(x)

条件文を導入することで、1から100までのすべての奇数を出力するようにブロックを修正することができます。

for x in range(1, 101):if x%2==1:print(x)

しかし、上記のコードの出力に対して「2byoutput」の乗算表を作成することもできます。これを行うには、次のようなステートメントを追加するだけです。

for x in range(1, 101):if x%2==1:print(x, "x", 2, "=", x * 2)

さて、forループが整数のリストをどのように扱うかを見てきましたが、今度は文字列に対してforループを使う方法を見てみましょう。

次のコードは、文中の各文字列の並びを返すものである。

a = "How to use a for loop in Python"for i in a:print(i)

また、forループを使って、変数aに含まれる文字列(スペースを含む)の数を数えることもできる。

a = ["How to use a for loop in Python"]for i in a:print(i.count(''))Output: 32

しかし、forループを別の変数に入れ、上記のコードを書き換えることで、以下のように同様の結果を得ることも可能です。

a=["How to use a for loop in Python"]c=[b.count('') for b in a]print(c)Output: [32]

注:文字数を得るには、countキーワードの後の大括弧内の逆カンマの間にスペースがないことを確認します。

また、上記の最後の2つのコードの各段落を修正して、forループを使用した単純なワードカウンタを作成することができます。この場合、**の括弧内の各引用符の間にスペースを入れるだけでよい。

a=["How to use a for loop in Python"]for i in a: print(i.count(' ') + 1)Output: 8

文字カウントの時と同じように、forループを以下の変数に入れることで、上記のワードカウントコードを書き換えることも可能です。

a = ["How to use a for loop in Python"]c=[b.count(' ') + 1 for b in a]print(c)Output: [8]

括弧内の逆カンマと逆カンマの間に半角スペースがあることに注意してください。

関連:Pythonで独自のモジュールを作成し再利用する方法

Pythonのforループを使った配列の処理

また、forループを使って、配列から特定の要素を取得することも可能です。

羊の配列があり、「健康」な動物は「yes」、「不健康」な動物は「no」という値になっているとします。" 羊羊にはそれぞれ固有の名前があり、病気の羊をすべて隔離したい。

forループを使って、不健康な羊をすべて出力することができます。このような場合にforループがどのように役立つかを見るために、次のコードは、配列からすべての不健康な羊の名前を出力します。

array = [{"name":"Sheep1", "healthy":"Yes"}, {"name":"Sheep3", "healthy":"No"}, {"name":"Sheep4", "healthy":"Yes"}, {"name":"Sheep5", "healthy":"Yes"}, {"name":"Sheep8", "healthy":"No"}, {"name":"Sheep7", "healthy":"No"}, {"name":"Sheep9", "healthy":"No"} ]for sheeps in array: if sheeps["healthy"]=="No": print("Quarantine", sheeps["name"])

Pythonでネストされたforループを使用する

複雑な配列やネストされた配列の各要素を出力する場合は、ネストされたforループが便利です。あるループを別のループの中に入れることで機能する。以下のコード例では、ネストされたリストの各項目を出力しています。ただし、辞書のキーしか出力されない。

nested_list = [[1, 2, 4, 5], {"name":"Python", "method":"write"}]for dict in nested_list: for i in dict: print(i)

Pythonのリストと配列をより深く理解することは、ネストされたforループを扱う際に有用です。

forループとwhileループはどちらが良いのでしょうか?

手元の問題に応じて、forループとwhileループのそれぞれにPythonの使用例があります。forループの方が一般的ですが、whileループを使いこなすことが重要でないわけではありません。

forループはプログラミング言語の垣根を越えてより汎用的な解決策を提供するが、Whileループの上位に位置づけるのは誤りである。どちらか一方が有用と決めつけるのではなく、特定の問題を解決する際にどちらか一方を検討するのがよいでしょう。それに、Pythonのプログラマーとしては、なくてはならない存在です。

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ