【发布时间】:2016-07-17 14:46:47
【问题描述】:
我有一个列表a = [3,7,4]
我想生成从列表的每个元素生成的序列的列表重复,如下所示:
b = [1,1,1,2,2,2,2,2,2,2,3,3,3,3]
【问题讨论】:
-
b=[] for i in a: b.extend([i]*(i))
我有一个列表a = [3,7,4]
我想生成从列表的每个元素生成的序列的列表重复,如下所示:
b = [1,1,1,2,2,2,2,2,2,2,3,3,3,3]
【问题讨论】:
像这样试试。
result = []
for i,j in enumerate(a):
result += [i+1 for n in range(j)]
结果
[1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
【讨论】:
输入:
a = [3,7,4]
b = [x for x in range(len(a)+1)[1::] for j in range(a[x-1])]
结果:
[1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
【讨论】: