如何重复嵌套列表的元素?
how to repeat elements of nested list?
我有一个列表列表如下:
original = [['best', 'movie', 'ever', '!'],
['i', 'love', 'this', 'actor', '!'],
['season','2']]
我想创建一个新列表,其中每个元素在原始列表中重复 3 次。期望的结果是:
new_list = [['best', 'movie', 'ever', '!'],
['best', 'movie', 'ever', '!'],
['best', 'movie', 'ever', '!'],
['i', 'love', 'this', 'actor', '!'],
['i', 'love', 'this', 'actor', '!'],
['i', 'love', 'this', 'actor', '!'],
['season','2'],
['season','2'],
['season','2']]
我试过这个:
new_list = [i*3 for i in original]
它returns:
[['best','movie','ever','!','best','movie','ever','!','best','movie','ever','!'],
['i','love','this','actor','!','i','love','this','actor','!','i','love','this','actor','!'],
['season', '2', 'season', '2', 'season', '2']]
如何更正代码以获得所需的输出?
只需使用:
[x for x in original for _ in range(3)]
不过,您可能需要使用:
[x.copy() for x in original for _ in range(3)]
我有一个列表列表如下:
original = [['best', 'movie', 'ever', '!'],
['i', 'love', 'this', 'actor', '!'],
['season','2']]
我想创建一个新列表,其中每个元素在原始列表中重复 3 次。期望的结果是:
new_list = [['best', 'movie', 'ever', '!'],
['best', 'movie', 'ever', '!'],
['best', 'movie', 'ever', '!'],
['i', 'love', 'this', 'actor', '!'],
['i', 'love', 'this', 'actor', '!'],
['i', 'love', 'this', 'actor', '!'],
['season','2'],
['season','2'],
['season','2']]
我试过这个:
new_list = [i*3 for i in original]
它returns:
[['best','movie','ever','!','best','movie','ever','!','best','movie','ever','!'],
['i','love','this','actor','!','i','love','this','actor','!','i','love','this','actor','!'],
['season', '2', 'season', '2', 'season', '2']]
如何更正代码以获得所需的输出?
只需使用:
[x for x in original for _ in range(3)]
不过,您可能需要使用:
[x.copy() for x in original for _ in range(3)]