Я пытаюсь поработать над проблемой, основанной на python, как:
`Given an integer,print the following values for each integer from 1 to n :
Decimal
Octal
Hexadecimal (capitalized)
Binary`
Что я сделал примерно так:
def print_format(number):
for i in range(number+1):
decimal=str(i)
binary=str(bin(i))
octa=str(oct(i))
hexagonal=str(hex(i))
return (decimal+' '+octa[2:]+' '+hexagonal[2:].upper()+' '+binary[2:])
print_format (5)
'5 5 5 101'
код возвращает только последний набор значений.Но то, что я ожидаю,
0 0 0 0
1 1 1 1
2 2 2 10
3 3 3 11
4 4 4 100
5 5 5 101
Часть кода, как с оператором print
, работает отлично.
def print_format(number):
for i in range(number+1):
decimal=str(i)
binary=str(bin(i))
octa=str(oct(i))
hexagonal=str(hex(i))
print (decimal+' '+octa[2:]+' '+hexagonal[2:].upper()+' '+binary[2:])
Может кто-нибудь пожалуйстаобъясните, что я сделал не так при использовании оператора return
?