Python轻松入门(四):循 环

网友投稿 326 2022-09-04


Python轻松入门(四):循 环

计算机程序的三大语句结构之一示意图

循环也是计算机程序的三大语句结构之一。它是在满足条件的情况下,反复执行某一段代码的计算过程。

# 例子 循环 原本需要编写 10 行的代码,现在使用【循环】后,编写方便了很多。在 Python 中,循环语句有两类:for 循环和 while numberList = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]for number in numberList: print(number)# 输出结果102030405060708090100# 例子dateList = [19930506, 19940114, 19951101, 19960704]for oneDate in dateList: print(oneDate)# 例子fruitList = ["apple", "grape", "cherry"]for fruit in fruitList: print(fruit)# 例子name = ["david","bob","bill"]for i in name: print(i)print(i)# 输出结果davidbobbillbill# 例子name = ["david","bob","bill"]for i in name[1:]: print(i)print(i)# 输出结果bobbillbill# 例子name = ["david","bob","bill"]newList = []for i in name[1:]: newList.append(i)print(newList)# 输出结果 ['bob', 'bill']

for循环应用:累加/累乘

for循环经常应用在多个数累加/累乘的计算中,也就是说需要反复多次地对大量数字进行同样地操作。

比如我有一个列表,里面是自己京东账户购物车里的5件商品的价格,然后需要计算清空购物车花多少钱。

# 例子JDList = [109.0, 21.5, 30.0, 509.0]Sum = 0for Price in JDList: Sum = Sum + Priceprint(Sum)# 输出结果669.5

遍 历

遍历的定义:指通过某种顺序对一个数据结构中的所有元素进行访问。隐喻:遍历就像点名,需要有顺序地对所有成员进行一次“查询”。

for 循环遍历字典的键,有两种方法可以使用:一是 for 循环遍历字典; 这个方法和 for 循环遍历列表的格式类似。二是 for循环遍历字典中的所有键; 使用 for 循环遍历 dict.keys(),将字典中的键赋值给变量,再通过 print() 输出变量。

# 例子studentAge = {"Gary": 14, "Adam": 13, "Jack": 15}for key in studentAge: print(key)# 输出结果GaryAdamJack# 例子studentAge = {"Gary": 14, "Adam": 13, "Jack": 15}for key in studentAge: print(studentAge[key])# 输出结果141315

遍历字典的键和值: 刚才我们使用 for 循环遍历字典的键和字典的值,如果想要同时输出字典的键和值,该怎么办呢?这时,我们可以在循环内部分别输出字典的键和对应的值。 注意,在 for 循环中,一次循环会把循环内的代码全部执行完后,再开始下一次循环。

# 例子studentAge = {"Gary": 14, "Adam": 13}for key in studentAge: print(key) print(studentAge[key])# 输出结果Gary14Adam13# 例子age = {"Gary": 14, "Adam": 13, "Jack": 15, "Max":13, "Tim":14}for key in age: print(key) print(age[key])# 输出结果Gary14Adam13Jack15Max13Tim14# 例子Names = ["Tony", "Kevin", "Asum", "Jessica", "Monic", "Black"]for name in Names: print(name)# 例子studentAge = {"Gary": 14, "Adam": 13}for key in studentAge: print(key) print(studentAge[key])# 例子Names = ["Tony", "Kevin", "Asum", "Jessica", "Monic", "Black"]for name in Names: print(name)# 例子 list = [44, 51, 38, 66, 90]sum = 0for value in list: sum = sum + valueprint(sum)

while循环 -- 条件循环

条件循环又称while循环,是一种以关键字while开头,以判断条件是否成立来决定是否重复执行某些代码的执行顺序。判断条件为真就继续循环执行,判断条件为假就终止循环。

# 用for和while循环 打印一个列表(list)里面的所有元素。NumberList = [1,2,3,4,5]for i in NumberList: print(i) NumberList = [1,2,3,4,5]j = 0while j < 5: print(NumberList[j]) j = j + 1

自增/自减是指在循环等结构中有一个起“计数器”作用的变量,通过对这个变量的增减,来控制循环终止的条件。

count = 1while count <=5: print(count) count = count + 1count = 5while count >=1: print(count) count = count - 1# 例子 这四行代码使用了while循环把小于等于100的数字全部打印出来。# 第一行代码初始化了变量Counter的值,赋值为0;# 第二行到第四行就是while循环结构。# 第二行使用while循环来判断当前的Counter是不是小于等于100。如果是,就继续执行下面的缩进代码;如果不是,就程序就终止。# 第三行,在while循环为True的情况下,打印当前Counter的值;# 第四行,在while循环为True的情况下,给当前的Counter加1再赋值给Counter,得到新的Counter,继续回到第二行代码,不断循环,直到while循环判断为False,程序结束。Counter = 0while Counter <= 100: print(Counter) Counter = Counter + 1# 例子sum= 0counter= 0while counter < 5: sum = sum + counter counter = counter + 1 print(sum)# 输出结果:013610# 例子sum= 0counter= 0while counter < 5: sum = sum + counter counter = counter + 1print(sum)# 输出结果10# 例子sum= 0counter= 0while counter < 5: counter = counter + 1 sum = sum + counterprint(sum)# 输出结果15

总结:for循环和while循环的区别

简而言之,需要记住三条:

for循环又叫计数循环,多用于批量处理列表内的每个元素;while循环又叫条件循环,多用于条件判断。for循环有天然的边界条件,while循环没有,需要程序员精心设计。大多数时候,for循环和while循环可以互换使用。

break、continue 跳出循环

迭代 Iteration 定义:编程中的迭代是指重复执行某些代码,每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。在实际应用中迭代经常和循环混用。

无论是for循环还是while循环,在一个大循环里面,默认的终止条件都是边界条件。在触发边界条件之前,代码会一直循环执行。break、continue可以改变这种“默认循环执行”。

continue的作用:跳过本次迭代(小循环)中它后面的剩余代码,直接进入下一次迭代。

# 例子NumberList = [1,2,3,4,5,6,7,8,9,10]for i in NumberList: if i <= 5: continue print(i) print(i)#输出结果678910

break的作用:跳出整个大循环,终止整个循环语句的执行,让代码从循环外的第一行开始执行。break会“跳出”或终止某一个循环,它结束的是整个循环结构。

# 例子NumberList = [1,2,3,4,5,6,7,8,9,10]for i in NumberList: if i > 5: break print(i)# 输出结果 如果i>5在循环体内就没有输出,第一次就跳出了循环,结束了整个循环12345

# 例子NumberList = [1,2,3,4,5,6,7,8,9,10]for i in NumberList: if i <= 5: continue print(i) print(i)#输出结果678910# 例子number = [1,-2,3,-4,5,-6]for i in number: if i < 0: continue print(i)# 输出结果135# 例子NumberList = [10, 4, 1, -1, 20, 6, 7, -20, 2, 13]for i in NumberList: if i <= 5: continue print(i) print(i)# 输出结果10206713# 例子NumberList = [10, 4, 1, -1, 20, 6, 7, -20, 2, 13]for i in NumberList: if i > 5: continue print(i) print(i)# 输出结果41-1-202# 例子List = [1, 10, 100, 50, 40, 30, 200]for i in List: if i <= 50: continue print(i)# 输出结果 打印出里面大于50的数字 100200# 例子 下面三个例子需要比对看,掌握缩进和对齐的用法NumberList = [10, 4, 1, -1, 20, 6]for i in NumberList: if i <= 5: continue print(i)# 输出结果 打印出大于5的数 print和if同级,每次都打印。10206# 例子NumberList = [10, 4, 1, -1, 20, 6]for i in NumberList: if i <= 5: continueprint(i)# 输出结果 内循环是打印出大于5的数 print和for同级,不是每次循环都打印,只打印最后一次。6# 例子NumberList = [10, 4, 1, -1, 20, 6]for i in NumberList: if i <= 5: continue print(i)# 输出结果 print()语句不仅在for循环以内并且在if判断里面,所以当i小于等于5的时候,判断为True,执行continue,程序会跳过同级的print(),结束本次迭代。而当i大于5的时候,判断为False,没有程序执行。所以整个程序没有输出。没有输出# 例子NumberList = [1,2,3,4,5,6,7,8,9,10]for i in NumberList: if i > 5: break print(i)# 输出结果 如果i>5在循环体内就没有输出,第一次就跳出了循环,结束了整个循环12345# 例子number = [1,-2,3,-4,5,-6]for i in number: if i < 0: print(i) break# 输出结果-2# 例子NumberList = [10, 4, 1, -1, 20, 6, 7, -20, 2, 13]for i in NumberList: if i > 10: print(i) break# 输出结果20# 例子Number = [3, 7, 6, 4, 8]for i in Number: if i <= 5: continue print(i)# 输出结果 找出其中大于5的数字并输出768# 例子 现在班级内有一个活动,五个同学报了名,只能让前三个报名的同学参加,并输出他们的名字。Names = ['James', 'Tony', 'LiLei', 'HanMeimei', 'Pony']i = 0for N in Names: if i < 3: print(N) i=i+1 continueNames = ['James', 'Tony', 'LiLei', 'HanMeimei', 'Pony']n = 0for i in Names: if n == 3: break print(i) n = n + 1

continue和break 不同之处在于:continue是跳过小循环中剩下的代码,继续下一次迭代。而break直接终止整个大循环。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解决@Api注解不展示controller内容的问题
下一篇:python发送邮件smtplib(python发送邮件怎么隐藏号码)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~