Создание строки из строки и целого числа в Python

Я получаю эту ошибку при попытке взять целое число и добавить к нему «b», преобразуя его в строку:

File "program.py", line 19, in getname name = "b" + num TypeError: Can't convert 'int' object to str implicitly 

Это связано с этой функцией:

 num = random.randint(1,25) name = "b" + num 

5 Solutions collect form web for “Создание строки из строки и целого числа в Python”

 name = 'b' + str(num) 

или

 name = 'b%s' % num 

как отмечает С.Лотт, оператор mingle «%» устарел для Python 3 и выше. И я украл имя «смешался» с INTERCAL, но так я об этом говорю и хотел увидеть его в печати хотя бы один раз – как додо – он исчезает с лица земли.

Python не будет автоматически преобразовывать типы так, как это делают языки, такие как JavaScript или PHP.

Вы должны преобразовать его в строку или использовать метод форматирования.

 name="b"+str(num) 

или форматирование в формате printf …

 name="b%s" % (num,) 

или новый метод .format string

 name="b{0}".format(num) 

Да, python не имеет неявного int для преобразования строк.

попробуйте str(num) вместо этого

Правильные ответы уже даны, но я хочу прослушивать и говорить, что вы всегда должны использовать str (var) каждый раз, когда вы собираетесь использовать var в качестве строки, независимо от того, знаете ли вы, что это строка или нет.

Береженого Бог бережет.

 name = "b{0:d}".format( num ) 
Python - лучший язык программирования в мире.