我们假设我有两个列表:
list_one = [1A, 1B]
list_two = [2A]
Run Code Online (Sandbox Code Playgroud)
如何从这两个数组中获取包含单词对的列表?想象:
answer = [1A-2A, 1B-2A]
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用两个for循环来实现它但是有一种'pythonic'方式吗?
你可以简单地使用product从itertools.
from itertools import product
list_one = ['1A', '1B']
list_two = ['2A']
result = ['-'.join(sub) for sub in product(list_one, list_two)]
print(result) # -> ['1A-2A', '1B-2A']
Run Code Online (Sandbox Code Playgroud)
我不认为它比这更像pythonic.
在引擎盖下,product(list_one, list_two)生成形式的元组('1A', '2A'),我们只是'-'.join()为了产生所需的结果.