在python列表理解中解压缩元组(不能使用* -operator)
发布于 2021-01-29 15:19:19
我试图基于另一个列表创建一个列表,将相同的值连续重复3次。
目前,我正在使用:
>>> my_list = [ 1, 2 ]
>>> three_times = []
>>> for i in range( len( my_list ) ):
... for j in range( 3 ):
... three_times.append( my_list[ i ] )
...
>>> print three_times
[1, 1, 1, 2, 2, 2]
但我想使用一种更Python化的方式来做到这一点,例如:
>>> my_list = [ 1, 2 ]
>>> three_times = []
>>> three_times = [ (value,) * 3 for value in my_list ]
>>> print three_times
[(1, 1, 1), (2, 2, 2)]
但是,我找不到解开元组的方法。
像three_times = [ *( (value,) * 3 ) for value in my_list
]
这样的东西对于解开元组是完美的,但这不是正确的语法。
关注者
0
被浏览
51
1 个回答