プログラミングスクール比較サイト

ピーエスワン

Python 言語

【Pythonの始め方】Pythonのfor文とwhile文の基礎を学ぼう

投稿日:

プログラミングでは、一回限りの処理内容を書くこともありますが、膨大な処理や、計算方法が同じ処理は、1行ずつ書く必要はありません。

そのかわりに、for文やwhile文を使って簡潔に繰り返しの処理を書くことができます。

Pythonでは、それぞれどのような時に使うのか学習していきましょう。

Pythonのfor文を学ぶ

最初はfor文についての解説をします。

基本的の使い方を説明した後に、応用的な使い方を解説します。

for文の基本的

最初に基本的な使い方を解説します。

for文の使い方

for文は繰り返し表現をしたい時に使います。

繰り返しのパターンとしては1回目から100回目は指定した処理をしたい、という場合のように、繰り返しの回数があらかじめ決まっている場合に使います。

for文は繰り返し回数が決まっているので、ループエラーが起きにくく、処理時間も事前におおよそ予測することができます。

数十行以上書かなければならないような繰り返しの処理をたった数行で書けるので、ぜひマスターしておきましょう。

実際にやってみよう

それでは、for文を使って、list内の名詞を複数形にする処理を書いてみましょう。

contents = [“book”, “hand”]
for c in contents:
    print(c + “s”)

出力結果は、

books
hands

となります。

実際の出力結果は以下のようなイメージです。
(以下はスクリーンショットです。)

python3-1

便利なrange関数

続いてfor文と一緒によく利用するrange関数について解説します。

range関数の使い方

Range関数とは、range()と表現し、引数に数値を代入することで、その範囲内の数値を全て順番に出力させることができます。Rangeの範囲指定は数値指定します。

実際にやってみよう

ここでは、range(4)として0から3までを出力させるコードを書きます。

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

出力結果は以下のようになります。

0
1
2
3

実際の出力結果は以下のようなイメージです。
(以下はスクリーンショットです。)

python3-2

forの中でbreakを使う

続いてbreakの解説です。

breakはfor文やwhile文の中でよく利用します。

breakの使い方

breakとは、for文の繰り返し処理の中で、処理を中断させてそこで打ち切りにする時に使います。

for文の中である条件を満たした時に処理を中断したい時に使います。

中断すると、for文の残り処理は実行されなくなり、そこで終了します。

実際にやってみよう

ここでは、0から4までを繰り返しで出力させるfor文を書いた後に、3が来た時に処理内容を打ち切りにするberak文を挿入して、出力結果を確認してみます。

for i in range(5):
    if i ==3:
        break
    print(i)

出力結果は、

0
1
2

となります。

実際の出力結果は以下のようなイメージです。
(以下はスクリーンショットです。)

python3-3

forの中でcontinueを使う

continueもfor文やwhile文の中でよく利用します。

breakとセットで覚えておきましょう。

continueの使い方

for文の中でcontinueを使うと、その処理がスキップされて次の処理に移ります。

スキップされると先頭に戻り、処理が続いていきます。

処理が不要なものはcontinueで条件指定して、それを除いた処理だけをしてもらうようなコードを書くことになります。

実際にやってみよう

ここでは、0から4まで出力させるコードを書き、3のところでスキップさせて、先頭の処理に戻り続く4を処理させるコードを書いていきます。

for i in range(5):
    If i == 3:
        continue
    print(i)

出力結果は、

0
1
2
4

となります。

実際の出力結果は以下のようなイメージです。
(以下はスクリーンショットです。)

python3-4

Pythonのwhile文を学ぶ

while文の基本

続いてwhile文についての解説をします。

基本的の使い方を説明した後に、応用的な使い方を解説します。

while文の使い方

Pythonには繰り返し処理の書き方がfor文の他にも、while文があります。

for文とは違い、while文は繰り返しの処理回数が事前にわからないものを処理させます。

For文では数値の範囲指定をしましたが、while文では条件式を書いて、式の条件を満たす場合に処理させる方法をとります。

実際にやってみよう

ここでは、初期値を0でスタートさせて5より数値が小さい場合に出力させ、5になったところでwhileのループから出るコードを書いていきます。

i = 0
while i < 5:
    print(i)
    i += 1

ここで、+=とは1加えて先頭の処理に戻る時に使います。

出力結果は以下のようになります。

0
1
2
3
4

While文はif 文と同じようにcontinueやbreakの指定を文中で用いることができます。

実際の出力結果は以下のようなイメージです。
(以下はスクリーンショットです。)

python3-5

whileの条件を間違えて無限に実行されてしまったら

Whileの条件がboolean型のtrueとなる条件を指定すると、while文から抜け出せなくなり、無限ループとなります。

例えば、1 == 1や1 < 3など常に条件式を満たす場合のことです。

抜け出すにはコマンドで、control + cを押して強制的にループから抜け出します。

実際にやってみよう

ここでは、1<2という常に条件を満たす式を用いてwhile文を無限ループさせてから、control + cでループから抜け出します。

抜け出せると最後に、keyboardinterruptという表示が出ます。

キーボードで強制的に中断した、という意味です。

それでは、以下にコードを書いていきます。

while 1 < 2:
    print(“ok”)

出力結果

Ok
Ok
Ok
……

実際の出力結果は以下のようなイメージです。
(以下はスクリーンショットです。)

python3-7

キーボードでcontrol + cを入力後の画像↓

python3-8

まとめ

Pythonのfor文とwhile文について解説しました。

繰り返し処理をマスターすると色々な処理を自動化できます。

ここで解説した内容は基本的な内容です。実際にシステム構築をしていると「こういう繰り返し処理がしたい」といった場面が出てくるでしょう。

そんなときはご自身でネットで調べたり、考えて試したりして実装することになります。

ただし、基本に忠実であることはとても大事です。

初歩的なこと・基本的なことを忘れずに学んでいきましょう。

-Python, 言語

Copyright© ピーエスワン , 2019 All Rights Reserved.