Pythonin peruskonversion suurin ongelma on, että se voi olla hyvin hidasta.
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
Tämä on funktion määritelmä funktiolle, joka muuntaa luvun tietyksi kantaksi. Jos kanta on pienempi kuin 2 tai suurempi kuin 10 eikä yhtä suuri kuin 16, se tulostaa virheilmoituksen. Muussa tapauksessa se laskee luvun ja kantamoduulin ja tallentaa sen muuttujaan "mod". Sitten se siirtyy while-silmukaan, jossa se jatkaa luvun ja kantaluvun moduulin laskemista, kunnes luku on yhtä suuri kuin 0. Se tallentaa jokaisen tuloksen muuttujaan "converted_string" sitä mukaa kuin se menee. Lopuksi se palauttaa merkkijonon "converted_string".
Tietotyypin muunnos
Pythonissa on muutamia tapoja muuntaa tietotyyppejä. Yksinkertaisin tapa on käyttää type()-funktiota. Voit esimerkiksi muuntaa luvun merkkijonoksi käyttämällä seuraavaa koodia:
str = tyyppi(numero)
Toinen tapa tehdä tämä on käyttää str()-funktiota. Voit esimerkiksi muuntaa merkkijonon numeroksi käyttämällä seuraavaa koodia:
numero = str(merkkijono)