2015-06-17 72 views
3

我在Python列表看起来像这样的列表:蟒蛇嵌套列表理解的字符串连接

[['a', 'b'], ['c', 'd']] 

我要拿出一个像这样的字符串:

a,b;c,d 

因此,清单应可以用一个;分离,同一列表的值应该用,

分开到目前为止,我试过','.join([y for x in test for y in x])返回a,b,c,d。不过,就像你所看到的那样。

+0

“所以名单应该进行分隔;而同一列表的值应该用分开,” - 那不是一个python列表。这是一个字符串 – matcheek

+2

'';'。join(','。join(xs)for xs in lst)' – falsetru

+0

是的,最终的输出应该是一个字符串。将相应地更新这个问题来说明问题。 – beta

回答

8
";".join([','.join(x) for x in a]) 
+0

我的实际数据包含浮点值:/ 和python now错误'TypeError:sequence item 0:expected str instance,float found' ... – beta

+0

在这种情况下,我需要使用下面的代码:'“;”。join [','。join(map(str,x))for value in value])' – beta

6
>>> ';'.join(','.join(x) for x in [['a', 'b'], ['c', 'd']]) 
'a,b;c,d' 
0

要做到这一点功能,你可以使用地图:

l = [['a', 'b'], ['c', 'd']] 


print(";".join(map(".".join, l))) 
a.b;c.d