Python江湖里,提供了两种循环语句, for…in循环语句【for循环】与while循环语句。

    for循环
    43.0.jpg43.png
    把20行的代码改成了2行代码。 这就是for循环魅力,一个最简单的for循环。
    for循环的基本格式
    44.jpg
    45.png
    46.png

    1. for i in [1,2,3,4,5,6]:
    2. print(str(i)+'取钱')
    3. #有一群人在排队取钱 , 也就是列表[1,2,3,4,5,6]
    4. #它们中的每一个被叫号的时候(for i in),就开始轮流进去取钱。
    5. #每一个人进去,都会把号码给计算机,然后说“取钱” , 也就是print(i+“取钱”)
    6. #最后计算机为每一个人都提供了服务。

    在for循环里, 这个变量的专有名称叫【元素】,英文item,i是它的简称。其实,你可以给这个号码取任意名字。
    47.png存号用什么变量名都可以。
    48.png
    循环结束后,元素是最后一次的值。

    我们刚刚看到“一群排队等着取钱的人”,都是以列表形式:[1,2,3,4,5,6]出现。 那么还有哪些数据类型可以成为“排队取钱的人”?
    小K感觉你已经猜到了, 就是字典。
    49.png
    我们用print(i)把ATM中的内容打印出来,发现i会逐渐接收字典中的每一个【键】。
    字符串也可以成为一群排队取钱的人。 而整数、浮点数绝对不是的,整数与浮点数排队取钱会报错的。
    for in name:这个循环的过程,在python江湖中称为【遍历】。
    其实,遍历这个词在古代汉语中已经出现过了
    五、循环(for循环、while循环) - 图9
    只是古人遍历的是山川;而Python遍历的是字符串、列表、字典。
    除了字符串、列表、字典三种数据类型,我们还可以结合其他数据遍历。

    range()函数
    for循环经常和range()函数一起搭配使用。
    51.png
    运行后, 你会看到整数0,1,2,3,4已经打印出来了。 使用range(n)函数,就可以生成一个从0到n-1的整数序列。
    52.png
    使用range(x,y) 函数,你可以生成从x到y-1的整数序列。
    有了range()函数之后,当想把一段代码重复执行n遍时, 就可以直接使用for i in range(n)来解决问题。
    如果重复打印“每天想你第n遍”,n从0到6,你会怎么写?
    53.png
    range()函数还有另外一种用法, 运行下面代码, 观察终端里的效果。
    54.png
    这里range(0,100,11) 的意思:从0到99(n-1)依次取数, 数与数之间的间隔为11。

    for循环办事流程
    for循环的办事流程,就是for循环中执行的语句。
    55.png
    运行一下,打印出 3 , 6, 9 。
    在这里print(i3)就是办事流程, 都是print(i3)。在当从i=1的情况下开始执行print(i*3),一直执行到i=3把所有人的业务都办完。
    56.jpg
    办事流程的专名叫【for的循环体】:格式是【冒号】后另起一行,【缩进】写命令。
    格式对于编程来说,是件特别需要注意的事情。不要大意失荆州哦。再强调一下for循环的格式:
    57.jpg
    下面来做一个练习, 我们将前面例子city = {‘北京’:’天安门’,’上海’:’东方明珠’,’广州’:’珠江’}中的天安门、东方明珠、珠江打印出来。
    如果在之前,没有使用过for循环的时候,我们会这么干。
    五、循环(for循环、while循环) - 图17
    尝试下使用for循环该如何操作?试一下。
    59.png

    While循环
    先和while循环混个脸熟,看一下while循环的颜值。
    60.jpg
    61.png
    是不是1,2,3,4,5,6依次打印出现?
    它和for循环不同,它不叫号,也不是把一群排队等着取钱的人的业务做完。它是在“一定条件下“,”按流程办事”。
    62.jpg63.jpg
    显然,while循环只需要两个步骤:1、设定条件 2、办事流程
    while循环:设定条件
    while循环在英文中表示“当”, while后面跟条件,当满足条件时,才会执行while内部的循环体。
    所以,while循环类似于高速上的收费站:只要你满足条件,那你就可以一遍又一遍循环“按流程办事”。
    就在上面例子中,只要满足条件x<6, 就会不停的执行x=x+1,print(x+1)打印出来,直到不满足条件后,就停止办事流程。
    同样,while循环也有代码规范。
    64.jpg
    65.png
    这里 pwd!=520666就是while循环设定的条件, 只要满足这个条件,就会一直执行while循环里面的循环体pwd = input(‘请输入银行卡密码:’)。 【!=的意思是≠】

    while循环:办事流程
    66.jpg
    while循环,在满足设定条件后,会一遍又一遍的循环执行办事流程。
    while 设定条件:后面的循环体语句必须缩进,只有缩进了才是while循环的循环体,才能一遍又一遍的执行。
    66.png
    68.jpg

    for循环与while循环对比
    for循环和while循环最大的区别就是在于【循环的工作量是否确定】,for循环就像ATM依次取钱一样,直到把所有人的钱都取完才下班。但是while循环就像收费站一样,只要【满足条件】就干活,不满足条件不干活。
    69.jpg
    把‘黄晓明‘拆成一个一个字符,这件事属于【循环的工作量已经确定】。
    而对于输入密码,判断是否正确这件事,我们也不知道输几次密码才能搞定呀。
    70.jpg