Išspręsta: bazinės konversijos python

Pagrindinė pagrindinės konversijos „Python“ problema yra ta, kad ji gali būti labai lėta.

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

Tai funkcijos apibrėžimas, skirtas funkcijai, kuri konvertuoja skaičių į nurodytą bazę. Jei bazė yra mažesnė nei 2 arba didesnė nei 10 ir nelygi 16, išspausdinamas klaidos pranešimas. Kitu atveju jis apskaičiuoja skaičiaus ir bazės modulį ir išsaugo jį kintamajame „mod“. Tada jis įeina į ciklą, kur toliau skaičiuoja skaičiaus ir bazės modulį, kol skaičius yra lygus 0. Kiekvieną rezultatą jis išsaugo kintamajame „converted_string“. Galiausiai jis grąžina eilutę „converted_string“.

Duomenų tipo konvertavimas

Yra keletas būdų, kaip konvertuoti duomenų tipus „Python“. Paprasčiausias būdas yra naudoti tipo() funkciją. Pavyzdžiui, norėdami konvertuoti skaičių į eilutę, galite naudoti šį kodą:

str = tipas (skaičius)

Kitas būdas tai padaryti yra str() funkcijos naudojimas. Pavyzdžiui, norėdami konvertuoti eilutę į skaičių, galite naudoti šį kodą:

skaičius = str(eilutė)

Susijusios naujienos:

Palikite komentarą