【Python循环6/6】循环的综合运用

目录

回顾

for循环遍历列表

for循环进行累加/累乘的计算

复杂的条件判断

嵌套        

嵌套循环

练习

遍历整数列表

总结


回顾

        在之前的博文中,我们学习了for计数循环;while条件循环;以及跳出循环的两种方法break,continue。

        今天,我们将通过一些真实的案例来更进一步体会循环的妙处。

        节日马上要到啦,**的行政小A在准备礼物时,发现了一大堆需要重复做的事情,咱们用循环大法来帮助她吧。

for循环遍历列表

        我们可以用for循环遍历列表girls,并用格式化输出的方式,输出每个女员工的姓名+祝福语。

for循环进行累加/累乘的计算

        除了遍历列表,for循环经常应用在多个数累加/累乘的计算中。
        例如:我有一个列表,里面是自己京东账户购物车里的5件商品的价格,然后需要计算清空购物车花多少钱。
        我们可以定义一个变量sum用来存储总金额,遍历列表jdList中的每个金额,依次累加到sum中。

复杂的条件判断

        除了累加和计数,for循环还可以和if条件判断结合,做复杂的条件判断

        例如:leader提出,如果女生们所选的礼品金额大于200的就可以晋级下一轮的终极PK!

        要实现这个需求,就需要在for循环遍历列表的同时,判断礼品金额是否大于200,如果大于200就筛选出这位幸运儿。

        经过一轮PK,本次节日最幸运的女神是Ann~她将获得“清空护肤品愿望清单特权”一次。OMG!也就是说可以清空她购买愿望清单里每一个品牌的每一种单品哦!!猜猜看这用程序应该如何做呢?

嵌套        

        我们可以使用嵌套循环来实现这个功能,在了解嵌套循环之前,我们先来回顾一下嵌套。
在if判断语句中,我们学习过if语句的相互嵌套。嵌套的if条件判断:就是在一个条件判断中之下再叠加一层条件判断。

嵌套循环

        同理,嵌套循环就是一个循环出现在另一个循环里。嵌套循环的特征是:对于外循环的每次迭代,内循环都要完成它的所有迭代。

        这5行代码的意思是使用for循环遍历列表brandList中的元素,之后进入内循环遍历itemList中的所有元素,使用print输出每一种组合。
 

brandList = ["Ja mer","Cbp","SK3"]
itemList = ["精华","面霜","眼霜","爽肤水"]
for brand in brandList:
    for item in itemList:
        print(f"恭喜你将获得{brand}品牌的{item}一份")

遍历列表--外循环

        第三行,用for...in...结构遍历列表brandList,依次取出列表中的元素。每取出一个元素就进入到下一个for循环结构中。

遍历列表--内循环

        第四行,用for...in...结构遍历列表itemList,依次取出列表中的元素。每取出一个元素,就进行一次格式化输出。

练习

Lucky的亮亮

        1024程序员节,夜曲选出了最lucky的一位程序员亮亮。老板会为他购买“苹果”,“华为”,“小米”这三个品牌的所有“新款手机”,“平板电脑”,“智能手表”。来试试看用嵌套循环实现这段代码,并把亮亮获得的礼物🎁 打在公屏上。
        输出的样式示例:恭喜亮亮将获得苹果品牌的新款手机一份。

参考代码:

# 定义列表brand,存储品牌数据:苹果,华为,小米
brandList = ["苹果","华为","小米"]
# 定义列表itemList,存储单品数据:新款手机
itemList = ["新款手机","平板电脑","智能手表"]
# 进入外循环,用for...in...结构遍历列表brand,依次取出列表中的元素
for brand in brandList:
    # 进入内循环,用for...in...结构遍历列表itemList,依次取出列表中的元素
    for item in itemList:
        # 输出格式化字符串:恭喜你获得i品牌的j一份
        print(f"恭喜亮亮将获得{brand}品牌的{item}一份")

运行结果:

案例

        循环嵌套是一种很常用的循环结构,在需要组合的场景都会经常用到哦~
        案例1:在自动化办公中,读取Excel文件中的每一行和每一列,就可以用循环嵌套。你还能想到哪些使用了循环嵌套的例子呢,欢迎在讨论区和大家分享哦~

         lucky的亮亮,获得了9个奖品。他打算将列表中的前5个礼物,送给一直支持他工作的女朋友。

        接下来我们试着用while循环帮助亮亮在公屏上输出前5个礼物的名字,截屏给亮亮的女朋友看。

参考代码:

present = ['苹果新款手机', '苹果平板电脑', '苹果智能手表', '华为新款手机', '华为平板电脑', '华为智能手表', '小米新款手机', '小米平板电脑', '小米智能手表']
count = 0
while count <= 4:
    print(f"恭喜你获得了{present[count]}一份")
    count = count + 1

运行结果:

while循环

        我们可以用while循环打印礼物列表present中的前5个礼物。代码第1行定义了列表present,存储9个礼物的名字;第2行初始化变量count,赋值为0;第3行使用while循环进行判断,count是否小于等于4;如果是就格式化输出“恭喜你获得了{present[count]}一份”;第5行将count计数加1。

for循环

        除了while循环,我们还可以使用for循环来实现刚刚的效果。例如:创建一个列表aList = [0,1,2,3,4],使用for循环遍历礼物列表中前五项的礼物并打印出来。

遍历整数列表

        刚刚只是遍历了5个数字的列表,我们可以通过创建列表的方式完成。可是如果我们要遍历100个整数,或者1000个整数呢?难道需要手动创建非常冗长的列表吗?no,no,no!
        接下来我们一起来学习一种更高效的方法吧~

        for i in range()的功能是:遍历一个整数列表。其中range()的功能是:创建一个整数列表。例如:range(5)可以生成一个从0 开始到5结束但不包括5的整数列表[0,1,2,3,4]。

for i in range(5):
    print(i)

for...in...

        第一行,用for...in...结构遍历range()功能生成的列表中的每一个值。

range(5)

        使用range()功能,填入数字5,可以生成一个从0 开始到5结束但不包括5的整数列表[0,1,2,3,4]。

结果

        for循环遍历range(5)生成的列表[0,1,2,3,4]每赋值给i一次,就执行一次print(i)。
直到全部赋值完为止,循环才结束。

        range(5)可以生成从0到4的整数列表。如果我们需要生成从1到4的整数列表,只需要在range(5)中添加一个初始计数值1,改成range(1,5)就可以啦。

        range()功能中可以填写2个内容,range(a,b)。a: 计数从 a 开始。默认是从 0 开始,可省略。b: 计数到 b 结束,但不包括 b,不可省略。

总结

        今天我们复习了for循环和while循环的知识点。在此基础上还学习了两个高级应用:嵌套循环,以及range()功能。

相关推荐

  1. Python循环

    2024-03-20 14:28:07       30 阅读
  2. 分支和循环综合作业

    2024-03-20 14:28:07       64 阅读
  3. Python循环语句

    2024-03-20 14:28:07       46 阅读
  4. Python循环语句——while循环基础应用

    2024-03-20 14:28:07       51 阅读
  5. Python循环语句——while循环嵌套应用

    2024-03-20 14:28:07       39 阅读
  6. Python循环语句——for循环嵌套使用

    2024-03-20 14:28:07       53 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-20 14:28:07       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-20 14:28:07       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-20 14:28:07       87 阅读
  4. Python语言-面向对象

    2024-03-20 14:28:07       96 阅读

热门阅读

  1. git是什么git能做什么

    2024-03-20 14:28:07       42 阅读
  2. 大会员体系有什么作用?

    2024-03-20 14:28:07       37 阅读
  3. goto语句用什么替换

    2024-03-20 14:28:07       38 阅读
  4. Linux中压缩/解压缩和归档

    2024-03-20 14:28:07       42 阅读