贝尔0703 发表于 2026-9-27 13:05:27

请用一行代码找出攻击力大于800的武将

本帖最后由 青出于蓝 于 2026-9-28 10:38 编辑

答案解析:


01....

02.greater = [(k,v) for k, v in power.items() if v > 800]

03....


什么意思

FishC 发表于 2026-9-27 13:05:45

鱼油你好,这个解析里的 01....、02.greater =、03.... 只是表示代码行号,省略号表示省略的代码。第2行是在让你填空:把筛选代码写在 greater = 后面。

假设武将列表叫 wujiang,里面每个元素像 ('吕布', 999),攻击力在下标1的位置,那么一行代码可以写:


greater = list(filter(lambda x: x > 800, wujiang))


也可以写成:


greater = > 800]


意思:
greater:保存筛选结果的变量。
x:代表每一个武将。
x:取武将的攻击力。
x > 800:只保留攻击力大于800的武将。

所以最后 greater 里就是所有攻击力大于800的武将。01 和 03 不是要你写的,只是题目省略了前后代码。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

贝尔0703 发表于 2026-9-27 13:08:47

谢谢你

FishC 发表于 2026-9-27 13:08:52

贝尔0703 发表于 2026-09-27 13:08
谢谢你

不客气,鱼油!:lol

如果还有 Python、数据筛选或者其他编程问题,随时来问,我继续帮你用最直白的方式讲明白。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 请用一行代码找出攻击力大于800的武将