for ... in ...就是for循环。
for循环后面要加冒号并且缩进!!!这一点跟if是一样的。
第一个...代表变量【也可以是多个】,第二个则代表一个遍历的值。
目录
【1】for ... in range(start,end,step):
---------【2】关于for ... in ...(不是range)见下一篇
【1】for ... in range(start,end,step):
参数:
【1】start 起始值,默认0
【2】end结束位置,但是不包含它本身。
【3】step步长,默认1,也就是间隔几个值取值,例:
list(range(1,5,1))为[1,2,3,4]每两个取第一个
list(range(1,5,2))为[1,3],这里隔开了一个,变成了每两个取第一个
step可以是负数,表示倒着数。
------------------------------------------------------------------------------
三个参数的类型都是【int(整数类型)与int()】不懂的可以点击超链接。
如果只填一个参数:range(5)表示start=0【默认】,end=5,step=1【默认】
如果填两个:range(1,5)表示start=1,end=5,step=1【默认】
三个都填就不说了。
特别注意:end参数必填!!!
--------------------------------------------------------------------------------------------------------------------
【新手可以跳过】
不过,某些人要只填end和step,就像这样:【千万不要模仿】:
print(list(range(end=5,step=1)))
指定出参数,并且打印出来【list把它处理成列表,否则它是一个range对象】。
然后出事故了:
Traceback (most recent call last):
File "*****************************", line 1, in <module>
print(list(range(1,step=2)))
TypeError: range() takes no keyword arguments
所以,range不能指定参数。
--------------------------------------------------------------------------------------------------------------------------------
好的现在我们继续【刚才跳过的可以回来了】
明白了range是一个什么东西,我们就可以来看一下for了
for i【注:这里变量可以为任何,且不用定义!!!】in range(x,x,x):
这就是基本格式了。
作用是什么?
我们用代码来看一下:
for i in range(10):
print("hello")
这是结果:
hello
hello
hello
hello
hello
hello
hello
hello
hello
hello
可以看到,输出了10个hello,说明循环了十次。这是for循环的第一种用法。
range里填几,就循环几次。
同样,如果填多个值,那么有几个range返回的数字就循环几次。
例:
for i in range(1,10):
print("hello")
结果:
hello
hello
hello
hello
hello
hello
hello
hello
hello
循环了9次。我们看一下range的返回数字:
print(list(range(1,10)))
答案是:
[1,2,3,4,5,6,7,8,9]
如果有看不明白的,参见前面的数据类型篇。
看到了吗:结果里有9个数字,所以它循环了9遍。
---------------------------------------------------------------------------------------------------------------------------------
接下来有人会问了:for后面的变量是干嘛的?
我们看一下变量的值。
for i in range(1,10):
print(i)
结果:
1
2
3
4
5
6
7
8
9
再看一下range产生的数字:
print(list(range(1,10)))
答案是:
[1,2,3,4,5,6,7,8,9]
明白了吗?变量的值,就是range产生的值,从左到右,按顺序改变,程序每循环一次,变量就改变一次,直到变量改到最右边,循环结束。
---------【2】关于for ... in ...(不是range)见下一篇
下文:[2]