2013-03-22 184 views
2

这看起来很简单,但我不知道该怎么做。打印列表元素与理解(python)

我需要打印放入字符串的列表中的元素。我试图使用列表理解,但解释器引发错误。

print '%s (...) %s (...) %s%s (...)%s (...)'%(i for i in mylist) 

我不能使用print'%s'%(因为我在mylist中),因为字符串没有规则的结构。上面的代码有语法错误。什么是正确的形式?

在此先感谢。

+0

请给出更多的细节,特别是你的字符串的结构。 – 2013-03-22 16:32:52

回答

3

打开列表转换成一个元组,而不是:

print '%s (...) %s (...) %s%s (...)%s (...)' % tuple(mylist) 

演示:

>>> mylist = ['a', 'b', 'c', 'd', 'e'] 
>>> print '%s (...) %s (...) %s%s (...)%s (...)' % tuple(mylist) 
a (...) b (...) cd (...)e (...) 

或者,使用.format() method而不是格式化字符串:

print '{} (...) {} (...) {}{} (...){} (...)'.format(*mylist) 

.format()还支持索引列入清单:

print '{0[0]} (...) {0[1]} (...) {0[2]}{0[3]} (...){0[4]} (...)'.format(mylist) 
+0

谢谢。很简单。 – 2013-03-22 16:33:43