Member 13822063 Ответов: 1

(Python) почему мой вывод не реверсирует?


Привет всем,

Я студент и готовлюсь к экзамену. Мне нужно будет создать программу, которая преобразует входные данные в двоичные.

До сих пор я работал с кодом, но мне нужно, чтобы мой вывод был в обратном порядке.

Я использовал
[::-1]
но, похоже, он этого не делает.

Спасибо!

Что я уже пробовал:

def binary_converter (num):
    while num != 0:
        output = num % 2 #0 or 1
        num = num // 2
        reverse = str(output) #change into string
        print (reverse[::-1], end="") #reverse not working

print ("Enter a number:")
num = int(input())
binary_converter(num)

1 Ответов

Рейтинг:
5

Thomas Daniels

output это всегда просто однобуквенная строка (потому что она находится внутри цикла), поэтому реверсирование ее просто дает ту же строку.

То, что вам нужно сделать, - это обратить вспять весь строка до печать его:

def binary_converter(num):
    reverse = ""
    while num != 0:
        output = num % 2 # 0 or 1
        num = num // 2
        reverse += str(output)
    print (reverse[::-1], end="")