Pythonでfor文(ループ処理)を使う方法を解説【初心者向け】
初心者向けにPython(パイソン)でfor文を使う方法について解説しています。for文は、繰り返し処理(ループ処理)を行うもので、プログラムを書く様々なシーンで必要になります。実際に書きながら覚えていくと良いでしょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Pythonでfor文(ループ/繰り返し処理)を使う方法を説明します。
for文は、Pythonに限らずプログラミングをする上で基本的な知識になるので、内容をしっかり理解しておきましょう。
なお本記事は、TechAcademyのPythonオンライン講座の内容をもとにしています。
なお、今回の記事の内容は動画でもご覧いただけます。
テキストよりも動画の方が理解しやすいという場合はぜひご覧ください。
目次
for文とは
for文は同じ処理を何度も行う場合(繰り返し処理)に使用します。
for文を使用するメリットとしては、同じ処理を何度も書かずに済むというメリットがあります。
もし、何度も書く必要があるとタイプミスをしてしまう可能性も増えます。また、何度も書いたコードを修正する場合、書き直す量も膨大になってしまいます。
そのため、for文を使用し同じ処理を1回書くだけで済ます事には大きなメリットがあります。
for文の書き方
for文の文法は次のようになります。
for val in list_namae: print(val)
ここでは、valの中に繰り返し用の変数を入れます。
Pythonでは予約語と呼ばれる事前に定められた単語以外であれば、英数文字と_(アンダースコア)を使用したものであれば、変数名や配列名として使用することができます。
ただし、予約語から始まる文字列や数字から始まる文字列を指定することはできません。
list_namaeで指定したリストの先頭要素から順番に処理されます。
もっとも重要な点は、for文の次の行のprint文の前にタブが存在している事です。
再度見てみましょう。
for val in list_namae:
□□print(val)
この赤い□は本来表示されませんが、この記事では説明のためにあえて表示しています。
Pythonではこのタブ文字で字下げされることで、for文の実行する処理ブロックであることを意味しています。
タブ文字は2文字や4文字で設定されることが多く、TABキーを押すことで入力が可能です。
この字下げの事をインデントと言います。
インデントを使用して処理ブロックを示す文法はPython独自の文法です。
実際に書いてみよう
それでは、同じ処理を何度も書いてみましょう。
今回は、10回表示しますという内容を書いてみます。まずは、for文を使わずに書くとどうなるか見てみましょう。
プログラムソースコード
print('0回目の表示です') print('1回目の表示です') print('2回目の表示です') print('3回目の表示です') print('4回目の表示です') print('5回目の表示です') print('6回目の表示です') print('7回目の表示です') print('8回目の表示です') print('9回目の表示です')
表示結果
0回目の表示です
1回目の表示です
2回目の表示です
3回目の表示です
4回目の表示です
5回目の表示です
6回目の表示です
7回目の表示です
8回目の表示です
9回目の表示です
大変ですね。
これをfor文を使用して書いてみます。
今回は、list_namae:の部分にrange関数を使用してlistを作成する処理を使用します。
range(int) という使用方法でintの中に数字を入れると、数字分のlistを作成してくれます。
プログラムソースコード
for val in range(10): print('{}回目の表示です'.format(val))
表示結果
0回目の表示です 1回目の表示です 2回目の表示です 3回目の表示です 4回目の表示です 5回目の表示です 6回目の表示です 7回目の表示です 8回目の表示です 9回目の表示です
このように、10行必要だった処理が、2行で実行できました。
以上、Pythonでfor文を使う方法を解説しました。
実際の場面でもよく行う処理なので、書き方を覚えておきましょう。
入門向けPythonの学習サイトも記事にしているので、学習したい方は参考にしてみてください。
この記事を監修してくれた方
中本賢吾(なかもとけんご) 開発実績:PHPフレームワークによるフランチャイズ企業向け会員制SNS。Shopifyによる海外進出用大規模ネットショップ構築。Vue.jsによる金融機関向け内部アプリ。AWSやLinuxハウジングサーバーでの環境構築。人工知能を利用した画像判別システム。小売チェーン店舗用スマホアプリ。Wordpressによる不動産チェーン店向け賃貸・売買仲介システム。基幹システム移管用データコンバートシステム。
小学生がUnityでオリジナルAndroidアプリをGooglePlayでリリース、NHK Whyプログラミング入賞、全国Programing Festival入賞、中学生がノーコードでSNS型PWAアプリリリースなど、ボランティアプログラミング教育活動行っている。 |
また、オンラインのプログラミングスクールTechAcademyではPythonを使って機械学習の基礎を学ぶPythonオンライン講座を開催しています。
初心者向けの書籍を使って人工知能(AI)や機械学習について学ぶことができます。
現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、習得することが可能です。
独学に限界を感じている方はぜひご覧ください。