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
Python 如何按元素连接两个列表并创建新列表?_Python_List - Fatal编程技术网

Python 如何按元素连接两个列表并创建新列表?

Python 如何按元素连接两个列表并创建新列表?,python,list,Python,List,我有两个列表,其中包含一些引用及其作者。如何创建包含两个列表中的两个元素的新列表 quotes=[ “艰难的日子不会持续,坚强的人会。”, “勇气比恐惧早一步。” ] 作者=[ “罗伯特·H·舒勒”, “科尔曼杨” ] 我要它回来 quotes\u列表=[ 艰难的日子不会持续,坚强的人会持续。-罗伯特·H·舒勒, “勇气比恐惧早一步.-科尔曼·杨” ] 如有任何解释,将不胜感激。谢谢。正是您想要的 zip(quotes, authors) 您可以使用和执行以下操作: 输出 ['-'.joi

我有两个列表,其中包含一些引用及其作者。如何创建包含两个列表中的两个元素的新列表

quotes=[
“艰难的日子不会持续,坚强的人会。”,
“勇气比恐惧早一步。”
]
作者=[
“罗伯特·H·舒勒”,
“科尔曼杨”
]
我要它回来

quotes\u列表=[
艰难的日子不会持续,坚强的人会持续。-罗伯特·H·舒勒,
“勇气比恐惧早一步.-科尔曼·杨”
]
如有任何解释,将不胜感激。谢谢。

正是您想要的

zip(quotes, authors)
您可以使用和执行以下操作:

输出

['-'.join(x)for x in zip(引号,作者)]
zip
允许您同时在两个列表的元素上循环,并且
'-'.join()
组合由破折号分隔的元素并将它们连接起来:

list(map(" - ".join, zip(quotes, authors)))

您要查找的是
str.join
zip
尽可能多的州:

使用
map
使此操作快速且
'-'。join
获取一个字符串序列,并将它们连接到一个由初始字符串分隔的序列,而
zip
使多个序列可供选择

>>> quotes = ['Tough times don’t last. Tough people do.', 'Courage is one step ahead of fear.']
>>> authors = ['Robert H. Schuller','Coleman Young']
>>> list(map(' - '.join, zip(quotes, authors))))
['Tough times don’t last. Tough people do. - Robert H. Schuller', 'Courage is one step ahead of fear. - Coleman Young']
或者,您也可以使用列表理解而不是映射,这是更可取的方法,因为它更可读,在大多数情况下更优化,尽管我认为映射应该更快,但我还没有测试:

[' - '.join(*s) for s in zip(quotes, authors)]

通过使用
zip()
、f字符串和列表理解,您可以实现所描述的确切行为:

quotes\u list=[f“{quote}-{author}”表示引用,作者在zip中(quotes,author)]
说明:

zip()
函数创建一个元组列表,其中第i个元组包含每个列表中的第i个元素

zip(引用,作者)=[(“艰难的时光不会持续,坚强的人会持续。”,“罗伯特·H·舒勒”),(“勇气比恐惧早一步。”,“科尔曼·杨”)]
然后,我们只需迭代列表并使用f字符串来实现精确的格式设置

>>> quotes = ['Tough times don’t last. Tough people do.', 'Courage is one step ahead of fear.']
>>> authors = ['Robert H. Schuller','Coleman Young']
>>> list(map(' - '.join, zip(quotes, authors))))
['Tough times don’t last. Tough people do. - Robert H. Schuller', 'Courage is one step ahead of fear. - Coleman Young']
[' - '.join(*s) for s in zip(quotes, authors)]