连接字符串在python
问题描述:
我需要串联 2个不同的字符串列表中的蟒蛇。连接字符串在python
例如:
list1 = ['A','B','C']
list2 = ['D', 'E']
我想获得
list3 = ['AD', 'AE', 'BD', 'BE', 'CD', 'CE']
我已经试过:
list3 = zip(list1,list2)
,并返回
list3 = [('A','D'), ('B','E')]
我也试过: 列表(itertools.product(列表1,列表2))
但它返回 [( 'A', 'd'),( 'A', 'E'),. ..,( 'C', 'E')],而不是[ 'AD', 'AE', 'BD', '是', 'CD', 'CE']
任何想法? THX
答
你可以使用itertools.product
得到笛卡尔乘积或采用2路
>>> list1 = ['A','B','C']
>>> list2 = ['D', 'E']
>>> import itertools
>>> list(itertools.product(list1, list2))
[('A', 'D'), ('A', 'E'), ('B', 'D'), ('B', 'E'), ('C', 'D'), ('C', 'E')]
>>> [(i, j) for i in list1 for j in list2]
[('A', 'D'), ('A', 'E'), ('B', 'D'), ('B', 'E'), ('C', 'D'), ('C', 'E')]
答
如何两个for循环?
伪下面
for item in list1:
for item2 in list2:
item = item + item2
答
这应有助于:
>>> from itertools import product
>>> list1 = ['A','B','C']
>>> list2 = ['D', 'E']
>>> "".join(list(product(list1, list2)))
['AD', 'AE', 'BD', 'BE', 'CD', 'CE']
它看起来像你想的'itertools.product'的列表( “笛卡尔积”) – jonrsharpe
试试这个项目list3 = [I + j为list1中的i,列表2中的j为] – Ashish