for循环



  • for...in...循环语句

    for i in [1,2,3,4,5]:
       print(i)
    

    终端上将依次出现列表里的所有数字

    分析

    for i in [1,2,3,4,5]:  #i是“空房间”
       print(i)
    

    空房间的学名叫【元素】(item),你可以把它当成是一个变量。那么首先,我们需要给房间取一个名字,也就是“变量名”。变量名i不是必须,可以改为其他名字:

    for i in [1,2]:
        print(i)
    
    for number in [1,2]:
        print(number)
    
    for LOVE in [1,2]:
        print(LOVE)
    

    for循环:一群排队办业务的人

    以列表的形式出现:[1,2,3,4,5]

    同时,字典、字符串也是

    dict = {'日本':'东京','英国':'伦敦','法国':'巴黎'}
    
    for i in dict:
        print(i)
    

    我们用print(i)把“空房间”i打印了出来,发现i会逐个接待字典中的每一个【键】

    字符串也属于“一群排队办业务的人”:

    for i in '吴宗宪':
        print(i)
    

    而整数、浮点数是不属于“一群排队办业务的人”的,如果把它们放在for循环里,代码会报错。


    现在我们理解了:列表,字典,字符串都可以是“一群排队办业务的人”。

    for i in [1,2,3,4,5]:  
       print(i)
    

    还是这段代码,代码的运行结果你应该已经了然于心,是1,2,3,4,5依次出现。也就是说,当这一群排队的人依次序走进空房间,每个人都会把业务办完。

    这个过程,在Python中的学名就叫做【遍历】。

    除了列表,字典,字符串三种数据类型,我们还可以遍历其他的数据集合。比如和for循环常常一起搭配使用的:range() 函数。

    range()函数

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

    运行后,你看到了整数0,1,2,是不是?使用range(x)函数,就可以生成一个从0到x-1的整数序列。

    它还有更多用法,再来看这段代码:

    for i in range(13,17):
        print(i)
    

    使用range(a,b) 函数,你可以生成了一个【取头不取尾】的整数序列。

    再或者:

    for i in range(3):
        print('我很棒')
    

    像这样,有了range()函数之后,当你想把一段代码固定重复n次时,就可以直接使用for i in range(n)解决问题。

    组合练习:

    for i in range(11):
        print('在这里写'+str(i)+'个音符')
    

    range()函数还有一种用法:

    for i in range(0,10,3):
        print(i)
    

    这里range(0,10,3)的意思是:从0数到9(取头不取尾),数数的间隔为3。

    解释:
    range(a,b,c)
    a 计数从a开始,不填时默认从0开始
    b 计数到b结束,但不包括b
    c 计数的间隔,不填时默认为1

    示例:

    用for循环完成1到100的整数分别乘以5的计算,并打印出来

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

    for循环:办事流程(接上面代码)

    在这里流程很简单,都是print(i*5)。然后在i=1的情况下,执行一遍流程;在i=2的情况下,再执行一遍流程……一直执行到i=5,也就把这群人的事情全部办完了:

    “办事流程”的学名是【for子句】。格式是【冒号】后另起一行,【缩进】写命令。

    举栗,采购大作战:

    d = {'小明':'主板','小红':'CPU','小白':'内存','小张':'风扇'}
    
    for i in d:
        print(d[i])
    

    以上为for循环内容



Log in to reply
 

建议的主题