Løst: basekonverteringspython

Hovedproblemet med basekonvertering i Python er at det kan være veldig tregt.

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

Dette er en funksjonsdefinisjon for en funksjon som konverterer et tall til et gitt grunnlag. Hvis basen er mindre enn 2 eller større enn 10 og ikke lik 16, skrives det ut en feilmelding. Ellers beregner den modulen til tallet og basen, og lagrer det i variabelen "mod". Den går deretter inn i en while-løkke hvor den fortsetter å beregne modulen til tallet og grunntallet til tallet er lik 0. Den lagrer hvert resultat i variabelen «converted_string» mens det går. Til slutt returnerer den strengen "converted_string".

Konvertering av datatype

Det er noen få måter å konvertere datatyper i Python. Den enkleste måten er å bruke type()-funksjonen. For eksempel, for å konvertere et tall til en streng, kan du bruke følgende kode:

str = type(tall)

En annen måte å gjøre dette på er å bruke str()-funksjonen. For eksempel, for å konvertere en streng til et tall, kan du bruke følgende kode:

tall = str(streng)

Relaterte innlegg:

Legg igjen en kommentar