【Python】Python编程从入门到实践课后题6-6

几天不敲,又忘了代码怎么写了,再次打开书继续第六章的学习。

练习到6-6,又卡(qia)壳了。
原题

6-6 调查:在6.3.1 节编写的程序favorite_languages.py 中执行以下操作。
 创建一个应该会接受调查的人员名单,其中有些人已包含在字典中,而其他人
未包含在字典中。
 遍历这个人员名单,对于已参与调查的人,打印一条消息表示感谢。对于还未
参与调查的人,打印一条消息邀请他参与调查。
  1. 循环嵌套

仔细看题其实就知道这是个循环嵌套,字典和列表的嵌套,主要要抓住的核心问题是谁嵌套谁,折腾了半天想明白了,要打印的是人员列表,即所有列表人员都要打印。
也就是说外循环是人员列表

for person in persons:  

内循环是字典

for key in favorite_languages.keys():
  1. 打印内容
    打印输出内容也是让我思考良久,小白就是小白,没辙。
    最后想到的方法是找一个集体出口,words来实现打印,如遇到匹配那么终端此次内部循环,break

    整体思路基本理清,源码如下。

源码

favorite_languages = {
    'jen': 'python',
    'sarah': 'c',
    'edward': 'ruby',
    'phil': 'python'
}
persons = ['111','345','jen','yyq','xyz','phil']
words = ""

    # print(key)
    # print("-------")
for person in persons:  
    for key in favorite_languages.keys():
        # print("----------------")   
        # print(person)
        # print(key)
        # print("----------------")
        if key in person:
            words = (key+",非常感谢您接受我们的调查.")
            break
        else:
            words = ("诚挚的邀请您接受我们的调查"+person)
            # print(key+" not exists")
    print(words)
    # print("----------------------------")

代码结果:

诚挚的邀请您接受我们的调查111
诚挚的邀请您接受我们的调查345
jen,非常感谢您接受我们的调查.
诚挚的邀请您接受我们的调查yyq
诚挚的邀请您接受我们的调查xyz
phil,非常感谢您接受我们的调查.

小白学习中,如有不足及需要改进的地方,请多多指教。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

实施工程师木易

感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值