我尝试在python中的一个列表中连接一些列表,下面是我正在做的一个示例(在实际代码中,列表要大得多):
import itertools
listenv = ["IN","VC","VS"]
listsize = ["U17-1","U17-2"]
listevnsize = list(itertools.product(listenv, listsize,))
print listevnsize
#This results in [('IN', 'U17-1'), ('IN', 'U17-2'), ('VC', 'U17-1'), ('VC', 'U17-2'), ('VS', 'U17-1'), ('VS', 'U17-2')]
我现在要做的是将内部列表与a结合起来-例如,我希望结果是:
[('IN-U17-1'), ('IN-U17-2'), ('VC-U17-1'), ('VC-U17-2'), ('VS-U17-1'), ('VS-U17-2')]
换句话说,我想加入内部列表,但当我尝试使用:
listevnsizejoined = '-'.join(map(str,listevnsizezip))
正如在另一个问题中所建议的,这是将所有外部列表连接成一个大字符串,如下所示:
(('IN', 'U17-1'),)-(('IN', 'U17-2'),)-(('VC', 'U17-1'),)-(('VC', 'U17-2'),)-(('VS', 'U17-1'),)
最终解决方案:
import itertools
listenv = ["IN","VC","VS","VX","RH","HT","DP","AD","PT","PTRH","WP","WPRH","CYVX","HM"];
listsize = ["U17-1","U17-2"];
listseventeenGR = ["17P:3","17P:4","17P:5.5","17P:7","17P:10","17P:16","17P:22","17P:28","17P:40","17P:49","17P:55","17P:70","17P:100"]
listevnsize = list(itertools.product(listenv, listsize,))
listenvsizejoined = []
for x in listevnsize:
listenvsizejoined.append('-'.join(i for i in x))
print listenvsizejoined
这是在所有组合中组合两个列表,然后用破折号连接这些内部列表的最终解决方案。你知道吗
用拉链就行了
结果不会是一个元组列表,因为元组中只有一个元素。你知道吗
使用
str.join
相关问题 更多 >
编程相关推荐