This question already has an answer here:
I get this error when trying to take an integer and prepend "b" to it, converting it into a string:
File "program.py", line 19, in getname
name = "b" + num
TypeError: Can't convert 'int' object to str implicitly
That's related to this function:
num = random.randint(1,25)
name = "b" + num
Correct answers have already been given but I want to chime in and say that you should always use str(var) every time you intend to use var as a string, regardless of whether you know it is a string or not.
Better safe than sorry.
Python won't automatically convert types in the way that languages such as JavaScript or PHP do.
You have to convert it to a string, or use a formatting method.
or printf style formatting...
or the new .format string method
Python 3.6 has f-strings where you can directly put the variable names without the need to use
format
:Yeah, python doesn't having implicit int to string conversions.
try
str(num)
insteador
as S.Lott notes, the mingle operator '%' is deprecated for Python 3 and up. And I stole the name "mingle" from INTERCAL but that's how I talk about it and wanted to see it in print at least once before - like the dodo - it vanishes from the face of the earth.