l_future_ 2022-12-25 20:32 采纳率: 50%
浏览 21
已结题

请问基于Python如何对列表各元素按不同数量进行添加

对于列表a=[1,2,3,4,5],列表b=[3,2,4,1,3],想要形成新列表c=[3,2,2,4,4,4,1,1,1,1,3,3,3,3,3],
即a表示b中各元素在新列表c中的数量,请问使用Python改如何实现呢?

  • 写回答

4条回答 默认 最新

  • +720 2022-12-25 21:00
    关注

    你可以使用列表推导式来实现这个功能

    
    
    ```python
    if __name__ == '__main__':
        a = [1, 2, 3, 4, 5]
        b = [3, 2, 4, 1, 3]
        c = [j for i, j in zip(a, b) for _ in range(i)]
        print(c)
    
    

    ```
    上述代码使用了列表推导式,循环迭代了元组 (i, j),其中 i 是 a 中的元素,j 是 b 中的元素。然后,使用内部的 for 循环生成 i个 j,并添加到结果列表中。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 1月2日
  • 已采纳回答 12月25日
  • 创建了问题 12月25日