学习python的第七天之循环语句——while 和for
while语句表达式
方式一:
while 条件:
条件成立的语句部分
循环体
方式二:
while 条件:
条件成立的语句部分
循环体
else:
循环完全执行完毕后执行的语句,没有用break等完全跳出循环
# 方式一
i = 0
while i<5:i += 1print('当前循环次数%d' %i)
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数3
#--> 当前循环次数4
#--> 当前循环次数5# 方式二
i = 0
while i<5:i += 1print('当前循环次数%d' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数3
#--> 当前循环次数4
#--> 当前循环次数5
#--> 以上完成了所有循环!# 注意不要出现死循环
while True:print('这是死循环')
#因为while后的判断条件一直是True,这个循环会一直进行,程序就卡死了
跳出循环的方法
break:跳出整个循环
continue:跳出本次循环
# break
i = 0
while i<5:i += 1if i == 4:breakprint('当前循环次数%d' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数3
#--> 第四次if条件成立,break被执行,跳出了整个循环,因此“当前循环次数4”以及“当前循环次数5”不会被打印
#--> 又因为循环被break跳出了,所以整个循环被跳过,包括else的执行语句,所以“以上完成了所有循环!”不会被打印# continue
i = 0
while i<5:i += 1if i == 3:continueprint('当前循环次数%d' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数4
#--> 当前循环次数5
#--> 以上完成了所有循环!
#--> 循环到第三次时,if条件成立,continue被执行,跳出了当前循环,因此“当前循环次数3”不会被打印,但是循环继续,下一个循环恢复,“当前循环次数4”会被打印,之后的“当前循环次数5”也会被打印
#--> 并且因为循环没有被完全跳出,在执行完打印“当前循环次数5”后,循环以及可以认为是完全执行完毕,else的执行语句被执行;其实可以将continue认为是循环里的一部分,当i循环到3时,continue替代了原本要执行的打印“当前循环次数3”,所以循环是完整的;
for语句表达式
方式一:
for 变量 in 可迭代对象:
循环体方式二:
for 变量 in 可迭代对象:
条件成立的语句部分
循环体
else:
循环完全执行完毕后执行的语句,没有用break等完全跳出循环
range()函数的使用:
range()
函数是 Python 中用于生成数字序列的内置函数。它常用于for
循环中,以便在循环中迭代一系列数字。range()
函数有几种不同的用法,下面是它们的基本形式:
单个参数:
range(stop)
- 生成从 0 到
stop-1
的整数序列(不包括stop
)。- 例如,
range(5)
生成[0, 1, 2, 3, 4]
。两个参数:
range(start, stop)
- 生成从
start
到stop-1
的整数序列(包括start
,不包括stop
)。- 例如,
range(2, 6)
生成[2, 3, 4, 5]
。三个参数:
range(start, stop, step)
- 生成从
start
到stop-1
的整数序列,步长为step
(包括start
,不包括stop
)。- 例如,
range(0, 10, 2)
生成[0, 2, 4, 6, 8]
。需要注意的是,
range()
函数在 Python 3 中返回的是一个范围对象(range object),它是一个不可变的序列类型,可以像列表一样进行迭代,但它不实际存储所有的数字,而是在迭代时生成它们,这使得它更加高效,特别是当处理非常大的数字范围时。
# 方式一
for i in range(1,6):print('当前循环次数%d' %i)
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数3
#--> 当前循环次数4
#--> 当前循环次数5# 方式二
for i in range(1,6):print('当前循环次数%d' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数3
#--> 当前循环次数4
#--> 当前循环次数5
#--> 以上完成了所有循环!# break
# 方式二
for i in range(1,6):if i == 4:breakprint('当前循环次数%d' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数3# continue
for i in range(1,6):if i == 3:continueprint('当前循环次数%d' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数1
#--> 当前循环次数2
#--> 当前循环次数4
#--> 当前循环次数5
#--> 以上完成了所有循环!
for使用列表
list_1 = ['一','二','三','四','五']
for i in list_1:print('当前循环次数%s' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数一
#--> 当前循环次数二
#--> 当前循环次数三
#--> 当前循环次数四
#--> 当前循环次数五
#--> 以上完成了所有循环!
for使用元组
tuple_1 = ('一','二','三','四','五')
for i in tuple_1:print('当前循环次数%s' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数一
#--> 当前循环次数二
#--> 当前循环次数三
#--> 当前循环次数四
#--> 当前循环次数五
#--> 以上完成了所有循环!
for使用集合
set_1 = ('一','二','三','四','五')
for i in set_1:print('当前循环次数%s' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数一
#--> 当前循环次数二
#--> 当前循环次数三
#--> 当前循环次数四
#--> 当前循环次数五
#--> 以上完成了所有循环!
for使用字典
dict_1 = {'一':'one', '二':'two', '三':'three', '四':'four', '五':'five'}
for i in dict_1:print('当前循环次数%s' %i)
else:print('以上完成了所有循环!')
#--> 当前循环次数一
#--> 当前循环次数二
#--> 当前循环次数三
#--> 当前循环次数四
#--> 当前循环次数五
#--> 以上完成了所有循环!
#--> 使用字典时只会调用字典里的key