Python

Pythonのfor文の使い方

By 2021年2月12日February 17th, 2021No Comments

Pythonのfor文の使い方はいくつかの方法があります。こちらの記事ではそれらの方法を解説します。

for文は同じ処理を繰り返したいときに使う処理です。for文を使うことで同じ文字列や数値を繰り返し表示さす事ができます。それでは、for文の使い方をみていきましょう。

基本的なPythonのfor文の使い方

まずは、基本的なfor文の書き方を見ていきます。構文は下記になります。

for 変数 in イテラブルオブジェクト:

    実行文

lists = ["タナカ", "ヤマダ", "ウエダ"]
for list in lists:
    print(list + "君こんにちは。")

結果:

タナカ君こんにちは。

ヤマダ君こんにちは。

ウエダ君こんにちは。


Pythonのfor文では多重ループをすることでfor文で文字列や数値などを入れ子にして表示することができます。まずは二重ループをします。for文の中にfor文を書くという形式になります。構文は下記になります。

for 変数1 in イテラブルオブジェクト:

    for 変数2 in イテラブルオブジェクト:

        print(変数1, 変数2)

それでは実際にコードを書いてみます。

lists = ["タナカ", "ヤマダ", "ウエダ"]
nums = [1, 2, 3]
for num in nums:
    for list in lists:
        print(num, list + "君こんにちは。")

結果:

1 タナカ君こんにちは。

1 ヤマダ君こんにちは。

1 ウエダ君こんにちは。

2 タナカ君こんにちは。

2 ヤマダ君こんにちは。

2 ウエダ君こんにちは。

3 タナカ君こんにちは。

3 ヤマダ君こんにちは。

3 ウエダ君こんにちは。


三重ループでも使い方は同じになります。

numbers = [1, 2, 3]
mojis = ["a", "b", "c"]
names = ["タナカ", "ヤマダ", "ウエダ"]
for number in numbers:
  for moji in mojis:
      for name in names:
          print(number, moji, name)

このようにfor文を多重ループすることによりリスト同士をセットで入れ子に表示させることなどが可能になります。

Pythonのfor文でrange関数を使用してループ数を決めることができる

for文にrange関数を組み合わして処理することで指定の回数forループを繰り返すことができます。range関数は引数で指定した値の数だけ数値や文字列を繰り返し表示することができます。構文は下記になります。

for 変数 in range(数値):

  実行文

for hello in range(5):
    print('みなさんこんにちは。')

結果:

みなさんこんにちは。

みなさんこんにちは。

みなさんこんにちは。

みなさんこんにちは。

みなさんこんにちは。


また、繰り返し処理の回数を引数で指定することもできます。

for num in range(1, 7):    print(num)

結果:

1  

2

3

4

5

6


このようにrange関数を使うことで、連続した数値や文字列を指定の回数だけ出力をすることができます。

Pythonのfor文の最後に実行される処理をelse文で記述する方法

forループの処理が終了した後にさらに何か処理をしたい場合にelse文を使います。else文のあとに処理を記述することができます。構文は下記になります。

for 変数 in イテラブルオブジェクト: 

    実行文 

else:

     実行文

list = ["タナカ", "ヤマダ", "ウエダ"]

for name in list:
    print("名前:" + name)
else:
    print("名前が出力できました。")

結果:

名前:タナカ

名前:ヤマダ

名前:ウエダ

名前が出力できました。


else文はループ処理が正常に終わったか確認したい場合などに使う事ができます。

Pythonのfor文の処理をbreak文で強制的にループから抜ける方法

break文を使うとforループの処理から強制的に抜けて終了することができます。break文は、forループの処理中にif文と組み合わせて条件を付けてbreak文を実行することでループから抜け出せます。構文は下記になります。

for 変数 in イテラブルオブジェクト: 

    if ループから抜けだす条件式: 

        実行文

       break 

lists = ("タナカ", "ヤマダ", "ウエダ")

for name in lists:
    print("名前:" + name)
    if name == "ヤマダ":
        print("ヤマダ君が出たので処理を終了します。")
        break

結果:

名前:タナカ

名前:ヤマダ

ヤマダ君が出たので処理を終了します。


これはif文の条件でnameの文字列が”ヤマダ”に一致した場合の処理に、break文を実行して処理を終了しているので”ウエダ”君が表示されずに強制的にforループから抜けだす事ができました。

Pythonのforループの先頭に戻ってやり直すcontinue文

continue文を使えば特定の数値をスキップしてループ処理を先頭に戻ってやり直すことができます。for ループは継続したいけど、特定の繰り返し時には処理をスキップしたい場合にはcontinue文を書きます。構文は下記になります。

for 変数 in イテラブルオブジェクト: 

    if 処理をスキップする条件式: 

        実行文

        continue 

for i in range(5):  if i == 3:        continue  print("番号:" + str(i)) 

結果:

番号:0

番号:1

番号:2

番号:4


continue文で”番号:3”をスキップして出力されました。この時にif文の中にcontinue文がありループ処理が先頭に戻っています。このようにcontinue文を使えば処理を途中でスキップすることができます。

まとめ

本記事ではPythonの基本的なfor文の処理方法について解説しました。Pythonのfor文はrange関数、break文、continue文など様々な形式でループ処理をする事ができました。以上、Pythonの基本的なfor文の使い方でした。

Udemyの動画学習でもPythonを勉強しよう!

「平日の夜の勉強会には時間が間に合わなくて参加できない」「通勤時間のわずかな隙間時間を勉強時間にあてたい」「本ではよく分からないところを動画で理解を深めたい」そんなあなたはUdemyの動画学習がお勧めです!

UdemyのPythonおすすめ33講座レビューリスト
HOSL

Author HOSL

More posts by HOSL