Ответ 1
Вам нужно преобразовать ints в строки, а затем вы можете присоединиться к ним:
','.join([str(i) for i in list_of_ints])
Я новичок в python и имею список длин, которые я хочу объединить в строку, разделенную запятой.
В PHP я бы сделал что-то вроде этого:
$output = implode(",", $array)
В Python я не уверен, как это сделать. Я пробовал использовать соединение, но это не работает, поскольку элементы являются неправильным типом (т.е. Не строками). Нужно ли мне создавать копию списка и преобразовывать каждый элемент в копию из длинной строки? Или есть более простой способ сделать это?
Вам нужно преобразовать ints в строки, а затем вы можете присоединиться к ним:
','.join([str(i) for i in list_of_ints])
Вы можете использовать карту для преобразования списка, а затем присоединить их.
",".join( map( str, list_of_things ) )
Кстати, это работает для любых объектов (а не только для длин).
Вы можете опустить квадратные скобки из ответа heikogerlach с Python 2.5, я думаю:
','.join(str(i) for i in list_of_ints)
Это очень похоже, но вместо того, чтобы создавать (потенциально большой) временный список всех строк, он будет генерировать их по одному, по мере необходимости, функцией соединения.
Просто ради этого вы также можете использовать форматирование строк:
",".join("{0}".format(i) for i in list_of_things)
и еще одна версия (довольно круто, а?)
str(list_of_numbers)[1:-1]