python - How to concatenate a string and an integer to get a three digit number -
i in beginner's course , made code not work
random_number = str(random.randrange (1, 1000)) random_number_length = (len (random_number)) zero_number = ("0" * 3 - (random_number_length)) final_number = (random_number_length + random_number) print (final_number)
the final output needs like:
004
instead of:
4
i need 3 digit number if generated number 89 or 7.
when attempt error:
zero_number = ("0" * 3 - (random_number_length)) typeerror: unsupported operand type(s) -: 'str' , 'int'
i'm guessing has string , integer.
above answers more useful (you don't have reinvent wheel), use own code:
import random # random number random_number = str(random.randrange (1, 1000)) # check number of digits in number random_number_length = len (random_number) # use number of digits number of zeros zero_number = "0" * (3 - (random_number_length)) # concatenate zero_number random_number final_number = zero_number + random_number print (final_number) # 006
try use less brackets: these confusing. main problem:
zero_number = ("0" * 3 - (random_number_length))
multiplication comes before subtraction, is:
"0" * 3
=> string"000" - random_number_length
=> string - int = ?
you cannot concatenate 2 different types (here int
, string
).
Comments
Post a Comment