我正在按以下方式列出清單:lst = ['val1', 'val2', 'val3']
output = [item for it in lst]...但是,我想將任意數量的每個項目添加到列表中,而不僅僅是一個。像這樣(如果我想每次向列表中添加 3 個元素):output = [item*3 for item in lst]...所以如果lst看起來像這樣:['val1', 'val2', 'val3']...output看起來像這樣:['val1', 'val1', 'val1', 'val2', 'val2', 'val2'...]我怎樣才能做到這一點?
2 回答

繁花如伊
TA貢獻2012條經驗 獲得超12個贊
像這樣(顯然,您必須更改代碼以滿足您的需要):
lst = ['val1', 'val2', 'val3']
output = [i for i in lst for x in range(3)]
print(output)
輸出(格式化):
[
'val1', 'val1', 'val1',
'val2', 'val2', 'val2',
'val3', 'val3', 'val3'
]
將 3 更改為您希望項目重復的次數。

守候你守候我
TA貢獻1802條經驗 獲得超10個贊
遍歷 nx 列表怎么樣?
li = ['val1', 'val2', 'val3']
n=3
print(sorted([el for el in li*n]))
輸出:
['val1', 'val1', 'val1', 'val2', 'val2', 'val2', 'val3', 'val3', 'val3']
添加回答
舉報
0/150
提交
取消