ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

流程控制之for循环

2021-04-15 18:06:36  阅读:151  来源: 互联网

标签:控制 jason name 流程 list nick 循环 print


目录

  • 一、语法
  • 二、for + break
  • 三、for + continue
  • 四、for循环嵌套
  • 五、for+else
  • 六、for循环实现loading


一、语法

为什么有了while循环,还需要有for循环呢?不都是循环吗?我给大家出个问题,我给出一个列表,我们把这个列表里面的所有名字取出来。

name_list = ['nick', 'jason', 'tank', 'sean']

n = 0
while n < 4:
    # while n < len(name_list):
    print(name_list[n])
    n += 1
nick
jason
tank
sean

字典也有取多个值的需求,字典可能有while循环无法使用了,这个时候可以使用我们的for循环。

info = {'name': 'nick', 'age': 19}

for item in info:
    # 取出info的keys
    print(item)
name
age
name_list = ['nick', 'jason', 'tank', 'sean']
for item in name_list:
    print(item)
nick
jason
tank
sean

for循环的循环次数受限于容器类型的长度,而while循环的循环次数需要自己控制。for循环也可以按照索引取值。

print(list(range(1, 10)))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
for i in range(1, 10):  # range顾头不顾尾
    print(i)
1
2
3
4
5
6
7
8
9
# for循环按照索引取值
name_list = ['nick', 'jason', 'tank', 'sean']
# for i in range(5):  # 5是数的
for i in range(len(name_list)):
    print(i, name_list[i])
0 nick
1 jason
2 tank
3 sean

二、for + break

for循环调出本层循环。

# for+break
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
    if name == 'jason':
        break
    print(name)
nick

三、for + continue

for循环调出本次循环,进入下一次循环

# for+continue
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
    if name == 'jason':
        continue
    print(name)
nick
tank
sean

四、for循环嵌套

外层循环循环一次,内层循环循环所有的。

# for循环嵌套
for i in range(3):
    print(f'-----:{i}')
    for j in range(2):
        print(f'*****:{j}')
-----:0
*****:0
*****:1
-----:1
*****:0
*****:1
-----:2
*****:0
*****:1

五、for+else

for循环没有break的时候触发else内部代码块。

# for+else
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
    print(name)
else:
    print('for循环没有被break中断掉')
nick
jason
tank
sean
for循环没有break中断掉

六、for循环实现loading

import time

print('Loading', end='')
for i in range(6):
    print(".", end='')
    time.sleep(0.2)
Loading......

标签:控制,jason,name,流程,list,nick,循环,print
来源: https://blog.51cto.com/u_13804357/2709006

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有