超初心者向けPython入門講座

仕事の効率化などにpythonを使いたい!けど何から始めらばよいか分からない、といった初心者の方向けに、pythonの導入から実用的な使い方まで、極力分かりやすくまとめたサイトです。

python Python初心者講座

第4章 Pythonのループ処理(for)を使ってみよう

投稿日:2020-04-09 更新日:

この章では、いよいよ「ループ処理」を使っていこうと思います!

解説内容

 

1.ループ処理って何?

「ループ処理」とは、その名の通り繰り返し同じ作業をおこなう方法です。ループ処理は、実際に動かしてみた方が分かりやすいと思うので、さっそくコードを書いていきましょう!

 

2.ループ処理を使ってみよう

まずは下のコードを「spyder」に入力し、実行してみてください。「spyder」の使い方を忘れてしまった人は、3章でおさらいしましょう!(もちろん、spyder以外で実行できる方はそちらで構いません。)

for i in range(5):
    print(i)

すると、順番に「0」、「1」、「2」、「3」、「4」と出力されたと思います。一行ずつ、詳しく説明していきますね。

まず、一行目の

for i in range(5):

では、iという変数に5つの数字(0~4)を順番に入れて処理をおこなうという意味になります。Pythonのループの書き方は、for 変数 in 〇〇:」という書き方になります。最後の「:」を忘れないように!!

ここの「for」「in」は固定で、「変数」は3章で説明したように好きな名前を付けてもらって構いません。(今回は「i」)

そして、最後の「range(5)」は、5つの数字(0~4)という意味になります。3章の「list」の時にも説明しましたが、Pythonの数字は0から始まるというルールがあるため、5つの数字となると、0~4になります。

 

次に、二行目の説明です。気づいた方もいらっしゃると思いますが、一行目に比べ、二行目が少し右にありますね。これは、Pythonでループ処理を行う上で重要なところで、forのループ処理は、forの後ろで、右に動いている行に適応されるというルールがあるからです。

ちなみに、この行が右に動いていることを「インデント」といい、「Tabキー」を押すことでインデントすることができます!

ここまで分かれば、あとは簡単ですね!print(i)では、変数「i」に順番に入った(0~4)を出力しています。これにより、「0」、「1」、「2」、「3」、「4」が出力されたわけですね!

 

ここで、今回のループ処理の形をもう一度おさらいしましょう!ループ処理のイメージは以下のようになります。

 

3.ループ処理の範囲

次に、ループ処理の範囲についてです。先ほど、ループ処理は「forの後のインデントされた行に適応される」と解説しましたね。これについて、実際にコードを動かしながら確認していきましょう!

以下のコードを実行してみてください。

for i in range(5):
    print(i)
print('Hello World')

すると、「0」、「1」、「2」、「3」、「4」、「Hello World」と出力されたと思います。このように、forループは、インデントされた行までを繰り返して処理し、それが終わった後に次の行が実行されます。

図にすると以下のようなイメージですね。

 

4.rangeによるループ処理の応用

Pythonのループ処理において、rangeを用いると繰り返したい数を容易に決めることができるため、非常に便利です。

しかし、変数に入る数字を0以外からにしたい場合もあると思いますので、それについて解説します。

では、下のコードを実行してみましょう。

for i in range(1,5):
    print(i)

すると、「1」、「2」、「3」、「4」と出力されたと思います。これは、rangeの特性で、以下のように数字を設定することができます。

1つ目の数字は分かりやすいと思いますが、問題は2つ目数字です。2つ目はその数字までの、0からの個数を表しているため、実際に表示される数字は2つ目の数字より1つ小さい数字になります。

ここは、難しく考え始めるとよくわからなくなりますが、要はrange(数字)の時と同じと考えてください!ただし、その前に「数字,」を付けることで始まりの数字を決めることができる、と理解するとよいと思います。

 

5.listを用いたループ処理

最後に、「range」の代わりに、3章で学んだ「list」を用いたループ処理について解説したいと思います。まずは、以下のコードを実行してみてください。

name = ['Work','Life','enjoy',3]
for i in name:
    print(i)

すると、「Work」、「Life」、「enjoy」、「3」と出力されたと思います。これは、nameという変数に入っている要素を順番に「i」に入れて処理をするというコードになります。

このように、forでのループ処理の時は、「list」を使うことで好きな文字や数字を変数に入れながらループ処理が行えます。

ちなみに、先ほどの出力結果は3章で解説した以下のコードと同じ結果ですね。このように、ループ処理と「list」を使うことで、より短くわかりやすいコードで処理を行うことができます!

name = ['Work','Life','enjoy',3]
print(name[0])
print(name[1])
print(name[2])
print(name[3])

 

6.まとめ

今回は、「for」を用いたループ処理について解説しました。ループ処理の方法は他にもあるのですが、まずはこの「for」を用いたループが使えれば、やりたいことは大体できます!

そして、ループ処理を行う際の「range」と「list」の使い分けですが、

  • 連続した数字を扱ったり、ループの回数を指定したい場合 = range
  • 好きな文字や数字を用いてループをさせたい場合 = list

と使い分けると良いと思います。次の章では、「if」を用いた条件分岐について解説したいと思います。

「変数」、「ループ処理(for)」、「条件分岐(if)」の3つが使えるようになると、簡単なデータ処理などは全て自動化できるようになりますので、頑張って勉強していきましょう!

>>前回:第3章 Pythonの変数を使ってみよう

>>次回:第5章 Pythonの条件分岐(if)を使ってみよう

スポンサーリンク




スポンサーリンク




-python, Python初心者講座
-,

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

第5章 Pythonの条件分岐(if)を使ってみよう

この章では、Pythonの条件分岐を使っていこうと思います。4章のまとめでも少し話しましたが、今までの「変数」、「ループ処理(for)」に加え、本章の「条件分岐(if)」が使えると、簡単なデータ処理は …

第9章 Pythonの入力(input)を使ってみよう

この章では、入力文(input)を学んでいきましょう!入力文とは、プログラムを実行した後に、あとから好きな文字や数字をプログラムに反映させる方法です。 解説内容 inputの使い方 inputを使って …

第10章 Pythonのライブラリを使ってみよう(anacondaでの導入解説)

この章では、Pythonを使う上でとても重要な「ライブラリ」について、導入から使い方まで説明していこうと思います。 解説内容 そもそもライブラリって何? さっそくライブラリを使ってみよう ライブラリを …

PythonのpandasでExcelを操作しよう(読み込み、書き込み)

今回は、Pythonのライブラリである「pandas」を用いたExcelの読み書きについて解説したいと思います。 他のライブラリを用いてもエクセルを操作することはできますが、「pandas」は使う機会 …

PythonのPandasで配列を結合しよう(行列名が違うor空白の場合も対応)

今回は、Pythonのライブラリである「pandas」で使用する配列の結合について説明したいと思います。 pandasで複数のデータを読みこんで処理したりする場合に必要な知識となります。 解説内容 使 …

スポンサーリンク


初めまして、サイトを運営しているキユと申します。

このサイトでは、まったくの初心者がPythonを使って、単純作業や仕事を効率化できるようになるまでに必要なことをまとめています。