【问题标题】:Print list elements with comprehension (python)使用理解打印列表元素(python)
【发布时间】:2013-03-22 16:30:17
【问题描述】:
这看起来很简单,但我不知道怎么做。
我需要将列表中的元素打印到字符串中。我正在尝试使用列表理解,但解释器会引发错误。
print '%s (...) %s (...) %s%s (...)%s (...)'%(i for i in mylist)
我不能使用 print '%s'%(i for i in mylist) 因为字符串没有规则结构。上面的代码有语法错误。正确的形式是什么?
提前致谢。
【问题讨论】:
标签:
python
list
list-comprehension
【解决方案1】:
将列表改为元组:
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)