Why didn't this number need to be a string?

When I did this exercise I tried writing the concatenation out without str(age) for the integer and it seems to still work. Is there a reason that I must write “str()” with the number? Are there certain instances where this would make a big difference? My work below:

birthday_string=“I am "
age=“10”
birthday_string2=” years old"

Full_birthday_string=birthday_string+age+birthday_string2
print(Full_birthday_string)