【发布时间】:2021-12-22 19:37:13
【问题描述】:
-
['4', '5', '6', '8', '5', '9', '6', '2', '6', '5']How can I get it to look like this: -
[45,68,59,62,65]
如何组合两个或多个列表元素,如 ['4','5'] 到 [45]
【问题讨论】:
标签: python python-3.x list split
['4', '5', '6', '8', '5', '9', '6', '2', '6', '5']
How can I get it to look like this:
[45,68,59,62,65]
如何组合两个或多个列表元素,如 ['4','5'] 到 [45]
【问题讨论】:
标签: python python-3.x list split
策略是将初始数据配对,然后转换为 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)]
[int(values[i] + values[i + 1]) for i in range(0, len(values), 2)] 可能更快