b=','.join([1,2,3,4,5]) print b
Я хочу напечатать строку: '1,2,3,4,5'
'1,2,3,4,5'
В своих ответах, пожалуйста, старайтесь использовать примеры кода, а не текст, потому что мой английский не очень хорош. Спасибо.
b = ','.join(map(str, [1,2,3,4,5])) # => '1,2,3,4,5'
Python автоматически не превращает целые числа в строки - сначала нужно преобразовать их в строки, а затем присоединить к ним.
anystring.join занимает итерацию из STRINGS , , а не одного из целых чисел, которое вы передаете ему!
anystring.join
Итак, используйте ','.join(str(x) for x in range(1, 6)) или подобное.
','.join(str(x) for x in range(1, 6))
Функция соединения ожидает строки не целые числа, если вы сделали b=','.join(["1","2","3","4","5"]), вместо этого она работает.
b=','.join(["1","2","3","4","5"])
Вот вывод консоли:
>>> b=','.join(["1","2","3","4","5"]) >>> print b 1,2,3,4,5 >>>