鱼C论坛

 找回密码
 立即注册
查看: 3080|回复: 7

列表推导式求助。

[复制链接]
发表于 2020-10-24 12:52:53 | 显示全部楼层 |阅读模式

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

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

x
a=[2,0,1]
b=[5,6,7]

想用a列表中的整数顺序作为下标对b列表进行重新排序。用列表推导式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-10-24 13:07:40 From FishC Mobile | 显示全部楼层
本帖最后由 hrp 于 2020-10-24 13:35 编辑
a=[2,0,1]
b=[5,6,7]
b = [b[i] for i in a]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-24 13:16:20 | 显示全部楼层
b=[b[a[i]] for i in a]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-24 13:18:46 | 显示全部楼层
本帖最后由 昨非 于 2020-10-24 13:27 编辑


兄弟你这个不符合要求啊
好吧,好像有点儿歧义,,,我不太清楚
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-24 13:33:05 From FishC Mobile | 显示全部楼层
本帖最后由 hrp 于 2020-10-24 13:35 编辑
昨非 发表于 2020-10-24 13:18
兄弟你这个不符合要求啊
好吧,好像有点儿歧义,,,我不太清楚


我也是这么觉得的,而且题目说对b列表重新排序,我感觉对b重新赋值好像也不符合要求,我重新生成一个c也不对
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-24 17:18:42 From FishC Mobile | 显示全部楼层
昨非 发表于 2020-10-24 13:16

是a列表就是索引的意思吧,那新建一个列表,把b列表元素按a的索引插入,就好了吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-24 18:34:05 From FishC Mobile | 显示全部楼层
本帖最后由 lfh1025 于 2020-10-24 18:43 编辑

我的理解也同六楼一样。创建一个新表,然后把b列表里的元素以a列表里面的值为索引排序。
a = [2, 0, 1]
b = [5, 6, 7]
c = []
for i in range(len(a)):
    c.insert(a[i], b[i])
print(c)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-24 20:34:59 | 显示全部楼层
本帖最后由 深山小兽 于 2020-10-24 20:37 编辑

请原谅学的不久,列表推导式不会。我把楼上的修改了一下。代码应该是能按照你的目的运行的。如果哪位大神可以修改成推导式给我看看就好了,又能学一招。
a = [2, 0, 3,4,1]
b = [5, 6, 7,9,8]
c = []
for i in range(len(a)):
        c.insert(a[i], b[i])
print(c)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-18 05:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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