QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码

主题

帖子

荣誉

VIP至尊会员

Rank: 15Rank: 15Rank: 15

积分
67
查看: 78|回复: 5

关于列表推导式的一下困惑:

[复制链接]
最佳答案
1 
累计签到:12 天
连续签到:4 天
大麦miracle 发表于 6 天前 785 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

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

x
不太懂这推导式的意思,还有for循环,谁能来解释一下
QQ截图20171207004834.png QQ截图20171207004849.png
楼层
跳转到指定楼层
最佳答案
9 
累计签到:3 天
连续签到:1 天
yjsx86 发表于 6 天前 | 显示全部楼层
等于下面的代码
  1. list3 = []
  2. for slogan in list1:
  3.     for name in list2:
  4.         if slogan[0] == name[0]:
  5.             list3.append('%s : %s' % (name,slogan[2:]))
复制代码
最佳答案
1 
累计签到:12 天
连续签到:4 天
大麦miracle  楼主| 发表于 6 天前 | 显示全部楼层
yjsx86 发表于 2017-12-7 01:32
等于下面的代码

你好为什么这list3.append()括号里的name和slogan不需要加引号了呢!忘列表里面添加元素不是要加引号的吗
最佳答案
1 
累计签到:37 天
连续签到:8 天
raimond 发表于 6 天前 | 显示全部楼层
  1. list1 = ['1. Just do it', '2.一切皆有可能', '3.让编程改变世界','4. Impossible is Nothing']

  2. list2 = ['4.阿迪达斯', '2.李宁','3.鱼C工作室','1.耐克']

  3. for slogan in list1:

  4.     for name in list2:

  5.         if slogan[0] == name[0]:

  6.             list3 = [name + ':' + slogan[2:]]

  7.             for each in list3:

  8.                 print(each)
复制代码


这是我根据老师答案改写的
最佳答案
1 
累计签到:12 天
连续签到:4 天
大麦miracle  楼主| 发表于 6 天前 | 显示全部楼层
raimond 发表于 2017-12-7 22:59
这是我根据老师答案改写的

谢谢改我可以改出来就是不理解为什么name和slogan不用加引号,而冒号就要加
最佳答案
9 
累计签到:3 天
连续签到:1 天
yjsx86 发表于 6 天前 | 显示全部楼层
大麦miracle 发表于 2017-12-7 22:12
你好为什么这list3.append()括号里的name和slogan不需要加引号了呢!忘列表里面添加元素不是要加引号的吗

格式化输出
print('%s : %s' % (name,slogan[2:]))
print('{0} : {1}'.format((name,slogan[2:]))
print(name + ':' + slogan[2:])
上面三个一样的

发表回复

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

本版积分规则

关闭

小甲鱼强烈推荐 上一条 /2 下一条

    移动客户端下载(未启用)
    微信公众号

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备11014136号

Copyright 2018 鱼C论坛 版权所有 All Rights Reserved.

Powered by Discuz! X3.1 Copyright
© 2001-2018 Comsenz Inc.    All Rights Reserved.

小黑屋|手机版|Archiver|鱼C工作室 ( 粤公网安备 44051102000370号 | 粤ICP备11014136号

GMT+8, 2017-12-13 07:41

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