You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python列表推导式生成两个等长序列的配对列表?

Pythonic列表推导式实现配对列表生成

当然可以!你想要的简洁写法其实非常直观,直接用列表推导式结合zip()就能搞定,还能把r1和r2的生成逻辑直接嵌进去,省去单独定义变量的步骤,完全符合Pythonic的风格。

最终实现代码

p = [[x, y] for x, y in zip(range(0, 10, 2), range(10, 0, -2))]

代码细节解释

  • range(0, 10, 2) 等价于你原来定义的r1,会生成序列 [0, 2, 4, 6, 8]
  • range(10, 0, -2) 对应原来的r2,生成序列 [10, 8, 6, 4, 2]
  • zip() 会自动把两个序列对应位置的元素一一配对,产出 (0,10), (2,8), (4,6)... 这样的元组对
  • 列表推导式则把每个元组对转换成 [x,y] 格式的子列表,最终生成你需要的配对列表p

运行这段代码后,p的结果是:

[[0, 10], [2, 8], [4, 6], [6, 4], [8, 2]]

对比你之前用循环追加的方式,这种写法既保留了可读性,又充分利用了Python的内置特性,算是最简洁高效的实现方式了。

内容的提问来源于stack exchange,提问作者DrBwts

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 06:12:33