鍍金池/ 問答/Python/ python 如何組成這個(gè)格式

python 如何組成這個(gè)格式

['1', '1', '1', '1', '2', '2', '2', '3', '3', '4', '4', '5']
這里是有規(guī)律的,從1排到x我要組成
0:4 4:7 7:9 9:11 11:12
0:4 就是從0 開始4個(gè), 4:7 就是 從4開始到最后一個(gè)2 7:9 開始就是從7開始到最后一個(gè)3 :
依次類推,組成一個(gè)字典或list

回答
編輯回答
乖乖噠

看起來(lái) 0:4, 4:7,... 可視為數(shù)組的下標(biāo),可簡(jiǎn)化成元素個(gè)數(shù) 4, 3,...

那么問題演變成“由同元素個(gè)數(shù)組成的序列,生成相應(yīng)的數(shù)組”,如下

def compute(*size_list):
    l2 = []
    for i, size in enumerate(size_list):
        l2.extend([str(i+1)] * size)
    return l2


def test_compute():
    assert compute(4, 3, 2, 2, 1) == [
        '1', '1', '1', '1',
        '2', '2', '2',
        '3', '3',
        '4', '4',
        '5',
    ]
2018年8月17日 19:49