鱼C论坛

 找回密码
 立即注册
查看: 2238|回复: 2

[已解决]第12講測試題6 - 求解釋

[复制链接]
发表于 2017-6-29 23:04:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
哪位大神帮忙解释一下第12讲测试题6, 要补上缺少的运算语言:
解答为:
list3 = [name + ':' + slogan[2:] for slogan in list1 for name in list2 if slogan[0] == name[0]]

请问为什么这样写if slogan[0] == name[0], 谁可以解释给我听, 让我懂意思?
不是要为TRUE才会进到list3的列表吗? 可是列表1的元素不是完全不等于列表2吗?
我哪里搞错了?
最佳答案
2017-6-29 23:42:35
for slogan in list1
那么slogan的取值是不是list1的四组字符串,slogan[0]在四组字符串里分别代表1, 2 ,  3,4  对吧

同理:for name in list2 : name[0]在for循环四次的时候分别代表1, 2, 3 ,4喽

当条件 if slogan[0] == name[0]]成立时,输出拼接的name + ':' + slogan[2:]

slogan[2:]是切片,去除了slogan里的slogan[0],slogan[1]
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-6-29 23:42:35 | 显示全部楼层    本楼为最佳答案   
for slogan in list1
那么slogan的取值是不是list1的四组字符串,slogan[0]在四组字符串里分别代表1, 2 ,  3,4  对吧

同理:for name in list2 : name[0]在for循环四次的时候分别代表1, 2, 3 ,4喽

当条件 if slogan[0] == name[0]]成立时,输出拼接的name + ':' + slogan[2:]

slogan[2:]是切片,去除了slogan里的slogan[0],slogan[1]
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-30 00:41:39 | 显示全部楼层
本帖最后由 yongxi 于 2017-6-30 01:13 编辑

if 判断的是 slogan 和 name 取第一个元素是否相同
代码可以转换如下:
list1 = []
list2 = []
list3 = []
for slogan in list1:
    for name in list2:
        if a[0] = b[0]:
            list3.append(name+":"+slogan)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-2-28 08:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表