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