day08流程控制之for循环-回顾

日常三问:
1.什么是for循环?
循环就是重复的去做某一件是,for循环是python提供的两种循环机制中的一种
2.为什么要有for循环?
循环机制使为了让计算机能像人一样能够重复的做某件事,严格来说for循环能完成的,
while循环也能完成,但for有while不具备的优点,在循环取值或者说遍历取值时用for
循环会比较简洁且代码的可读性高
3.怎么用循环?
语法:
for 变量名 in 可迭代对象:
代码1
代码2
代码3
例:
list1=['tom',18,male]
for i in list1:
print(i)


一、for循环基本运用之循环取值
-->为了体现出for在循环取值上的优势,使用for和while两种方式分别进行循环取值,
进行对比。

1.1 列表的循环取值
for循环列表取值:
list1=['tom',18,male,180]
for i in list1:
print(i) #for 循环只需要两行代码即可遍历列表取出各个值

while循环列表取值:
list1=['tom',18,male,180]
i=0
while i<4:
print(list1[i])
i+=1 #需要增量赋值来改变循环条件,总体四行代码,
代码显得冗长,可读性比for循环取值可读性较低

1.2 字典的循环取值
for循环字典取值:
dict1={'name':'tom','age':18,'sex':'male','height':180}
for i in dict1: #for循环遍历字典时是遍历字典的key
print(i,dict[i]) #打印key,并用key取出值打印

while循环字典取值:while循环遍历字典过于麻烦,不作详细说明

1.3 for循环与while循环的异同
相同之处:两者都是循环,都是用来重复某段代码,for循环能干的while循环
同样也能干,只是效率不同
不同之处:while循环循环次数取决于条件,条件不满足时循环才能结束,所以
也称之为条件循环。
while循环循环次数取决于in后面值的个数(len),in后面可迭代对象
包含的值为零时,循环才能结束

1.4 for循环range控制循环次数
用in后面数据类型的值的个数来控制循环次数是可以的,但是有局限性:
当循环的次数过多时,数据类型值的个数也要增加到相应的个数,才能循环那么多次,
这样相当的麻烦,所以需要其他的控制循环次数的方法
用range控制循环次数:
for i in range(100)
print(i) #循环打印一百次

for循环搭配range取值,可以按照索引取值,但比较麻烦
例:
list1=['tom',18,male,180]
for i in range(len(list1)):
print(list1[i])

直接用循环遍历更加方便
for i in range(4):
print(i)

---->python2和python3中range方法的区别:
python2中range产生的一个列表,相当于一筐实实在在的鸡蛋,比较占空间,而且没有必要
python3中range生成的是一个迭代器,即能下需要数量的鸡蛋,剩内存空间。

1.5 for加continue
用法和while循环一样,终止本次循环进入下次循环
例:
for i in range(5):
if i==4:
break
print(i)

1.6 for和while 循环一样也能镶嵌,外层执行一次,内层需要完全的循环完毕,外层才进入下一次循环
例:
copy
for i in range(3):
print('外层循环-->', i)
for j in range(5):
print('内层-->', j)

1.7 for加break
for循环只有在没有值可以遍历的时候才会退出,如果想在循环中强制退出,需要用到break
且循环只有break这一种终止方案
上一篇:Java基础--day08


下一篇:java基础的第二轮快速学习!day08