我目前使用以下表达式生成列表(T和no_jobs是整数):
for i in xrange(no_jobs):
row = row + T * [i]
我想出的将其转换为列表理解陈述的第一件事是:
[T*[i] for i in xrange(no_jobs)]
但这显然创建了一个嵌套列表,这不是我正在寻找的。我所有的其他想法似乎都很笨拙,所以如果有人用pythonic和优雅的方式创建这些类型的列表,我将感激不尽。
答案 0 :(得分:6)
嵌套循环。
[i for i in xrange(no_jobs) for x in xrange(T)]
答案 1 :(得分:0)
但这显然会创建一个嵌套列表,而不是我正在寻找的。 p>
所以只是压扁结果。列表添加是串联,因此我们可以通过“求和”将所有列表放在一起(将空列表作为“累加器”)。
sum((T*[i] for i in xrange(no_jobs)), [])