Gelöst: Basiskonvertierung Python

Letzte Aktualisierung: 09/11/2023

Das Hauptproblem bei der Basiskonvertierung in Python ist, dass sie sehr langsam sein kann.

def convert_to_base(num, base): 

if base < 2 or (base > 10 and base != 16): 

print("Invalid Base") 

return -1
else: 

    converted_string, mod = "", num % base 

    while num != 0: 

        mod = num % base 

        num = int(num / base) 

        converted_string = chr(48 + mod + 7*(mod > 10)) + converted_string 

    return converted_string

Dies ist eine Funktionsdefinition für eine Funktion, die eine Zahl in eine gegebene Basis umwandelt. Wenn die Basis kleiner als 2 oder größer als 10 und ungleich 16 ist, wird eine Fehlermeldung ausgegeben. Andernfalls berechnet es den Modul der Zahl und der Basis und speichert dies in der Variablen „mod“. Es tritt dann in eine While-Schleife ein, in der es weiter den Modulus der Zahl und die Basis berechnet, bis die Zahl gleich 0 ist. Es speichert jedes Ergebnis in der Variablen „converted_string“, während es fortfährt. Schließlich gibt es den String „converted_string“ zurück.

Datentypkonvertierung

Es gibt einige Möglichkeiten, Datentypen in Python zu konvertieren. Der einfachste Weg ist die Verwendung der Funktion type(). Um beispielsweise eine Zahl in eine Zeichenfolge umzuwandeln, könnten Sie den folgenden Code verwenden:

str = Typ (Zahl)

Eine andere Möglichkeit, dies zu tun, ist die Verwendung der Funktion str(). Um beispielsweise eine Zeichenfolge in eine Zahl umzuwandeln, könnten Sie den folgenden Code verwenden:

zahl = str(string)

Zusammenhängende Posts: