Python: как не печатать запятую в последнем элементе в цикле for?

мой код повторяет набор и печатает имена актеров:

for actor in actorsByMovies():
    print actor+",",

результат выглядит так:

Brad Pitt, George Clooney,

но я хочу, чтобы он обнаружил последний элемент, чтобы он не печатал последнюю запятую. Результат должен быть вместо этого:

Brad Pitt, George Clooney

как я могу это сделать?

2 ответов


print ', '.join(actorsByMovies())

решение @jamylak лучше всего, когда вы можете его использовать, но если вам нужно сохранить цикл для других вещей, вы можете сделать что-то вроде этого:

from __future__ import print_function # Python [2.6, 3)

for index, actor in enumerate(actorsByMovies()):
    if index > 0:
        print(', ', end='')
    print(actor, end='')

используя тот же новый print функция, вы можете сделать это вместо использования str.join:

print(*actorsByMovies(), sep=', ')