ブリブリ備忘録 おっ、python

HackerRankの問題とコメント(python3) 拙いですが...

Loops for文,rangeについて

・問題

Task 
Read an integer . For all non-negative integers , print . See the sample for details.

Input Format

The first and only line contains the integer, .

Constraints

 

Output Format

Print  lines, one corresponding to each .

Sample Input 0

5

Sample Output 0

0
1
4
9
16

ソースコード

if __name__ == '__main__':
    n = int(input())
for i in range(n):
    print(i*i)

・コメント

forを使う問題。whileでも可能。pythonのfor文は分かりにくい。

for i in range(n):

を見ればわかる通り、

for 変数 in オブジェクト:

という形になっている。

forとinはワンセットで登場する。

for i in range(n):

では、

変数iに0を代入→:以下を実行

変数iに1を代入→:以下を実行

          ・

     ・

変数iにn-1を代入する→:以下を実行

というループが行われている。

さらに

range(n)

はn未満の数値を返す関数で、

range(n,m)

はn以上m未満の数値を返す関数である。

例えば、

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

に対しては

0
1
2
3
4

という出力が得られ、

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

に対しては

1
2
3
4

という出力が得られる。

・URL

https://www.hackerrank.com/challenges/python-loops/tutorial