Нет существенной разницы.Во всех случаях, когда вы могли бы использовать первую форму, вторая будет работать, а вторая будет продолжать работать на Python 3.
Однако некоторые люди считают, что написание вызова метода для литеральной строки выглядит неожиданноесли вы один из них, то есть несколько других вариантов:
' '.join(iterable) # Maybe looks a bit odd or unfamiliar?
Вы можете использовать имя вместо буквенной строки:
SPACE = ' '
...
SPACE.join(iterable) # Perhaps a bit more legible?
Или вы можете написать его встиль, аналогичный string.join()
, но имейте в виду, что аргументы противоположны:
str.join(' ', iterable)
Наконец, расширенный вариант - использовать несвязанный метод.например,
concatenate_lines = '\n'.join
...
print(concatenate_lines(iterable))
Любой из них будет работать, просто выберите тот, который, по вашему мнению, лучше всего читается.