2014-02-21 59 views
3

我有这样的名单:转换列表中的字符串

scores = [ 
    ('WillyCaballero', '2'), 
    ('Angeleri', '2'), 
    ('Antunes', '2'), 
    ('FlavioFerreira', '2'), 
    ('Camacho', '2'), 
    ('SamuGarc\xc3\xada', '2'), 
    ('I\xc3\xb1igoMart\xc3\xadnez', '2'), 
    ('Jos\xc3\xa9\xc3\x81ngel', '6') 
    ... 
] 

如何在一个str变量和输出存储这样的格式?:

Willy Caballero 2 
Angeleri 2 
Antunes 2 
... 
+0

你只是想打印或你想存储以及? –

+0

我想存储 – buly

+0

好的检查我的答案,你会得到一个字符串中的分数数组 – pythonian29033

回答

6

使用str.join,与whitespace,然后再加入元素与'\n'

In [25]: print '\n'.join(' '.join(s) for s in scores) 
Willy Caballero 2 
Angeleri 2 
Antunes 2 
Flavio Ferreira 2 
... 
+0

该死的,编辑前我应该回答! – pythonian29033

+0

@ pythonian29033为什么不; P – zhangxaochen

+0

因为现在,你得到所有upvotes – pythonian29033

0
str = '\n'.join(' '.join(s) for s in scores) 
print(str) 
0
for i in scores: 
    print i[0],i[1] 
0

编辑

 
>>> out = map(' '.join, p) 
>>> for i in out: 
...  print i 
... 
WillyCaballero 2 
Angeleri 2 
Antunes 2 
>>> 
+0

这只是在另一个字符串列表中连接列表中的元组。它不会生成一个很长的字符串。 –

+0

我想现在可以管理 –

+0

'out'仍然是一个列表。 –

0

我会做到这一点;

scoresList = '' 
for score in scores: 
    scoresList += ' '.join(score) + '\n' 
#end loop 
+0

这不能解决你的问题,因为它只是*打印*而不*创建一个字符串*。 –

+0

好的我会编辑它 – pythonian29033

+0

这会创建一个*列表*,而不是*字符串*。 –

相关问题