說我有這個名單:如何增加和填充python列表的大小?
[1,2,3,4]
,我想:
[1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4]
什麼是這樣做的最佳方式?
我目前的方法是創建一個新的列表:
x = [1,2,3,4]
y = [[n]*4 for n in x]
這給:
[[1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3], [4, 4, 4, 4]]
這似乎接近,但沒有雪茄......誰能幫助?
這種簡單性很難擊敗(+1) – NPE 2013-03-14 15:10:42
+1。我最喜歡這個,但是如果我要使用itertools解決方案,我會使用'itertools.repeat':'[n2 for n in x for n2 in repeat(n,4)]''。 – 2013-03-14 15:20:11
另一個'itertools'解決方案:'list(chain(* izip(* repeat(x,4))))',但現在我們正在陷入一些難以精神分析的東西。 – 2013-03-14 15:43:48