我需要将列表中的项与另一个列表中的项连接起来.在我的例子中,该项是一个字符串(更准确的路径).在连接之后,我想获得一个列表,其中包含由连接产生的所有可能的项目.
例:
list1 = ['Library/FolderA/', 'Library/FolderB/', 'Library/FolderC/']
list2 = ['FileA', 'FileB']
Run Code Online (Sandbox Code Playgroud)
我想获得这样的列表:
[
'Library/FolderA/FileA',
'Library/FolderA/FileB',
'Library/FolderB/FileA',
'Library/FolderB/FileB',
'Library/FolderC/FileA',
'Library/FolderC/FileB'
]
Run Code Online (Sandbox Code Playgroud)
谢谢!
In [11]: [d+f for (d,f) in itertools.product(list1, list2)]
Out[11]:
['Library/FolderA/FileA',
'Library/FolderA/FileB',
'Library/FolderB/FileA',
'Library/FolderB/FileB',
'Library/FolderC/FileA',
'Library/FolderC/FileB']
Run Code Online (Sandbox Code Playgroud)
或者,稍微更便携(也许更强大):
In [16]: [os.path.join(*p) for p in itertools.product(list1, list2)]
Out[16]:
['Library/FolderA/FileA',
'Library/FolderA/FileB',
'Library/FolderB/FileA',
'Library/FolderB/FileB',
'Library/FolderC/FileA',
'Library/FolderC/FileB']
Run Code Online (Sandbox Code Playgroud)