2013-03-22 111 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