Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
pythonical将多个值插入列表_Python_List_Insert_Idioms - Fatal编程技术网

pythonical将多个值插入列表

pythonical将多个值插入列表,python,list,insert,idioms,Python,List,Insert,Idioms,我想把这个清单翻过来: l=["Three","Four","Five","Six"] 在这一点上: ['Three', 3, 'Four', 4, 'Five', 5, 'Six', 6] 我使用了这段代码(它工作得很好): for i,j in zip(range(1,len(l)*2,2),range(3,7)*2): l.insert(i,j) 但我想Python不会为此感到骄傲。有没有较短的方法?我可能会这样做: >>> a = ["Three","Fo

我想把这个清单翻过来:

l=["Three","Four","Five","Six"]
在这一点上:

['Three', 3, 'Four', 4, 'Five', 5, 'Six', 6]
我使用了这段代码(它工作得很好):

for i,j in zip(range(1,len(l)*2,2),range(3,7)*2):
    l.insert(i,j)

但我想Python不会为此感到骄傲。有没有较短的方法?我可能会这样做:

>>> a = ["Three","Four","Five","Six"]
>>> b = range(3,7)
>>> zip(a,b)
[('Three', 3), ('Four', 4), ('Five', 5), ('Six', 6)]
>>> [term for pair in zip(a,b) for term in pair]
['Three', 3, 'Four', 4, 'Five', 5, 'Six', 6]
或者,使用
itertools.chain

>>> from itertools import chain
>>> list(chain.from_iterable(zip(a,b)))
['Three', 3, 'Four', 4, 'Five', 5, 'Six', 6]
相关的:
In [124]: l=["Three","Four","Five","Six"]

In [125]: [x for x in itertools.chain(*zip(l, range(3,7)))]
Out[125]: ['Three', 3, 'Four', 4, 'Five', 5, 'Six', 6]