for文の挙動について質問します。
python
1for i in range(6): 2 print(i) 3 print('ほい')
とすると、結果の表示が、
0
ほい
1
ほい
2
ほい
3
ほい
4
ほい
5
ほい
となります。
表示される数字は理解できますが、
なぜ「ほい」という文字列が、5回表示されるのか、わかりません。
ためしてみたことは、
i is 5
True
i is 'ほい'
False
5 is 'ほい'
False
です。
よろしくお願いいたします〜
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答4件
0
ループ内でそういう処理をしているだけなんだから当たり前なんですが、逆に何が疑問なんでしょう?
for文の使い方を調べればすぐわかると思うんですが。
投稿2019/07/21 23:21
総合スコア8949
0
Python
1for i in range(6): 2 print(i) 3 print('ほい')
これを次のように直すと「ほい」は一回だけになります。
Python
1for i in range(6): 2 print(i) 3 4print('ほい')
同じインデントで続く行は同じブロックとみなされ、for の繰り返し対象になります。
投稿2019/07/22 00:04
総合スコア28660
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/22 09:11
2019/07/22 09:25 編集
0
ベストアンサー
逆に、下のコードだとどうなると思いますか?
python
1for i in range(6): 2 print('ほい')
あるいは、こういうのだと?
python
1for i in [0, 1, 2, 3, 4, 5]: 2 print(i) 3
for文はループ対象から値が取り出せなくなるまで値を取り出してi
のような変数に代入しながら、ブロック内を実行するという機能を持っています。それだけ。
投稿2019/07/22 10:36
総合スコア30933
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/22 12:08
2019/07/22 12:26 編集
2019/08/06 22:42
2019/08/06 22:49 編集
2019/08/07 00:07
2019/08/07 00:15 編集
2019/08/07 00:19
2019/08/07 00:22
2019/08/07 00:24
2019/08/07 00:24
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/21 23:32
2019/07/21 23:35
2019/07/22 12:35