【问题标题】:How to split a list in python like below? [duplicate]如何在 python 中拆分列表,如下所示? [复制]
【发布时间】:2021-12-22 19:37:13
【问题描述】:
  1. ['4', '5', '6', '8', '5', '9', '6', '2', '6', '5']

     How can I get it to look like this:
    
  2. [45,68,59,62,65]

如何组合两个或多个列表元素,如 ['4','5'] 到 [45]

【问题讨论】:

    标签: python python-3.x list split


    【解决方案1】:

    策略是将初始数据配对,然后转换为 int,zip 和 slice 是一个很好的方式 dot that

    values = ['4', '5', '6', '8', '5', '9', '6', '2', '6', '5']
    result = [int(a + b) for a, b in zip(values[::2], values[1::2])]
    print(result)  # [45, 68, 59, 62, 65]
    

    • values[::2]:二分之一['4', '6', '5', '6', '6']
    • values[1::2]:超过两个,从第二个开始['5', '8', '9', '2', '5']

    【讨论】:

    • 或者使用索引[int("".join(values[i: i + 2])) for i in range(0, len(values), 2)]
    • @OlvinR​​oght 我不会验证但[int(values[i] + values[i + 1]) for i in range(0, len(values), 2)] 可能更快
    猜你喜欢
    • 1970-01-01
    • 2014-10-09
    • 2018-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多