循环分为while循环和for循环
while循环是检查一个条件表达式,只要条件表达式计算结果是true就执行下面缩进的代码,直到条件表达式计算结果为false时,结束循环
command = input("请输入命令:")
while command != 'exit':
print(f'输入的命令是{command}')
command = input("请输入命令")
死循环,比如我们要打印出1-100的数字应该这样写
i = 1
while i <= 100:
print(i)
i += 1
如果少了最后一行就变成了死循环
for循环通常是从一个sequence类型,比如字符串,列表,元组中依次取出每一个元素进行操作
studentAges = ['小王:17', '小赵:16', '小李:17', '小孙:16', '小徐:18']
for student in studentAges:
print(student)
这里的 student 变量就依次代表了 studentAges里面的每一个元素,执行下面 缩进的代码 print(student)
循环N次 要用到内置函数,range
# range里面的参数100 指定循环100次
# 其中 n 依次为 0,1,2,3,4... 直到 99
for n in range(100):
print(n)
print('hello,word')
enumerate 函数可以返回在遍历元素的时候,得到指定元素在列表元组里面的索引
比如,找出下面列表中年龄大于17岁的学员,打印出他们在列表中的索引
ages = ['小王:17', '小赵:16', '小李:17', '小孙:16', '小徐:18']
for idx, student in enumerate(ages):
if int(student.split(":")[-1]) > 17:
print(idx)
break 终止循环,在循环体代码里面满足某个条件表达式的时候就可以终止当前的循环了
for i in range(100):
command = input("请输入命令:")
if command == 'exit':
break
print(f'输入的命令是{command}')
print('程序结束')
continue 是结束当前循环,后面的循环还是要继续运行
while True:
command = input("请输入命令:")
if command == 'exit':
break
if command == 'cont':
continue
print(f'输入的命令是{command}')
print('程序结束')
上面的代码 当用户输入exit的时候会执行 break 结束当前的循环,如果输入 cont 但是还让用户继续输入下一个命令。
列表推导式
把列表里面的每个元素,经过相同的处理,生成另一个列表
的操作
list1 = [1,2,3,4,5,6]
list2 = [num**2 for num in list1]
print(list2)
这样 list2就可以算出 list1里面每一个元素的平方