1
我有以下代碼:使用從特定點填寫izip_longest
#!/bin/python
from itertools import chain, izip_longest
def filltape(n):
numlist = list(range(-(2*n)+1, (2*n)+1))
alphalist= list("".join('BA' for i in xrange(n)))
print list(chain(*izip_longest(numlist, alphalist, fillvalue=' ')))
filltape(4)
,輸出是:
[-7, 'B', -6, 'A', -5, 'B', -4, 'A', -3, 'B', -2, 'A', -1, 'B', 0,'A', 1, ' ', 2, ' ', 3, ' ', 4, ' ', 5, ' ', 6, ' ', 7, ' ', 8, ' ']
我無法弄清楚如何打印從中途短名單進入較長的名單,基本上我想輸出看起來像:
[-7, ' ', -6, ' ', -5, ' ', -4, ' ', -3, ' ', -2, ' ', -1, ' ', 0, ' ', 1, 'B', 2, 'A', 3, 'B', 4, 'A', 5, 'B', 6, 'A', 7, 'B', 8, 'A']
背景:我想解決this problem。實現這一目標(不是最有效的,雖然)
這是可能的,但是這是他在這個問題想的輸出。 – fredtantini 2014-12-19 08:40:48
我知道現在正在嘗試的是/可能不是解決ACM問題的方法,但是我想要的輸出是用fredtantini的答案實現的,謝謝! – 2014-12-19 08:50:17