こんにちは!ゆーや(@yuyamanm118712)です。
こちらのページでは完全独学でWebプログラマとなった私が
「for文」に関して必要な情報をまとめています。
この記事を読むと
- 「for文」を理解できる
- 「for文」の実際に動くコードが見れる!
最後までじっくりと読んで、一緒に学習にしていきましょう。
なお、ご指摘・ご質問はTwitter(@yuyamanm118712)のDMまでよろしくお願いします。
for文とは
for文は繰り返し処理を行いたいときに使うものだよ!
まずは、次のプログラムをコピペして、動かしてみましょう!
for i in range(1, 10):
print(i)
## 実行結果
1
2
3
4
5
6
7
8
9
1~9までの数字が出力されたと思います!
これは、range(1, 10) (=1以上10未満の数字)から
1回目は「1」を取り出して、変数 i に代入して、print(i)で出力。
2回目は「2」を取り出して、変数 i に代入して、print(i)で出力。
…
9回目は「9」を取り出して、変数 i に代入して、print(i)で出力。
という繰り返し処理を実行した結果になります!
range(1,10)のように処理していく順番が明確なものを「イテラブル(反復可能)」と言います!
これを踏まえ、for文は次のルールで記述します!
for 変数 in イテラブル
実行したい処理
イテラブルなものには
・list
・タプル
・辞書(dict)
などがあるよ!
イテラブルの例とforの使い方
range関数
range関数は最初の例でもありましたが、イテラブルです!
実際は
range(start, stop, step)
のように3つの引数を持つことができます!
ただ、引数の組み合わせで次のような使い方ができるので覚えておきましょう!
range(stop)
for i in range(5):
print(i)
## 実行結果
0
1
2
3
4
startを設定しないと、「0」から始まることに注意しよう!
range(start, stop)
for i in range(-5, 5):
print(i)
## 実行結果
-5
-4
-3
-2
-1
0
1
2
3
4
マイナスの数字も扱えるよ!
range(start, stop, step)]
for i in range(1, 20, 3):
print(i)
## 実行結果
1
4
7
10
13
16
19
stepは間隔を指定するよ!
例では3ずつ数えている!
list
listもイテラブルです!
listをfor文で回すと、listに含まれる要素を順番に処理できます!
list = ['hello', ',', 'world', '!']
for word in list:
print(word)
## 実行結果
hello
,
world
!
これはめちゃくちゃ使います!
listの中身の方は何でも良いよ!
タプル
タプルもイテラブル!
タプルでのfor文も見ておきましょう!
tuple = ('hello', ',', 'world', '!')
for word in tuple:
print(word)
## 実行結果
hello
,
world
!
listとまったく同じ使い方ができることを覚えておこう!
辞書(dictionary)
辞書もイテラブルです!
辞書をfor文で回すと、キーと値のペアを順番に処理できます!
ただし、書き方が違うので要注意!!
dict = {
'key1' : 'value1',
'key2' : 'value2',
'key3' : 'value3',
}
for k, val in dict.items():
print('#############')
print('key: ' + k)
print('value: ' + val)
## 実行結果
#############
key: key1
value: value1
#############
key: key2
value: value2
#############
key: key3
value: value3
辞書をfor文で扱うときは
①変数をキーと値の2つ分用意すること
②辞書.items()と書くこと
この2つを注意しよう!
処理を中断、スキップしたい場合
break(中断)
for i in range(5):
if i == 3:
break
print(i)
## 実行結果
0
1
2
if文とbreakを組み合わせることで、
iが3になったらfor文の処理を中断できていることがわかる!
continue(スキップ)
for i in range(5):
if i == 3:
continue
print(i)
## 実行結果
0
1
2
4
if文とcontinueを組み合わせることで、
iが3の時の処理をスキップしていることがわかる!
まとめ
① for文は繰り返し処理の時に使う
② イテラブルとは反復可能なオブジェクトの事である
③ イテラブルな例には、range関数、list、タプル、辞書などがある
④ それぞれの for文 の書き方
⑤ for文を中断したいときは「break」、スキップしたいときは「continue」
まとめの内容を見て、もう頭に浮かべば完璧!
同じ繰り返し処理「while」についても同時に学ぶと理解が進みます!
こちらからご覧ください↓↓↓
コメント