Vyriešené: základná konverzia python

Hlavným problémom základnej konverzie v Pythone je, že môže byť veľmi pomalá.

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

Toto je definícia funkcie pre funkciu, ktorá prevádza číslo na daný základ. Ak je základ menší ako 2 alebo väčší ako 10 a nerovná sa 16, vytlačí sa chybové hlásenie. V opačnom prípade vypočíta modul čísla a základne a uloží ich do premennej „mod“. Potom vstúpi do cyklu while, kde pokračuje vo výpočte modulu čísla a základne, až kým sa číslo nerovná 0. Každý výsledok ukladá do premennej „converted_string“ tak, ako ide. Nakoniec vráti reťazec „converted_string“.

Prevod dátového typu

Existuje niekoľko spôsobov, ako konvertovať dátové typy v Pythone. Najjednoduchším spôsobom je použiť funkciu type(). Ak chcete napríklad previesť číslo na reťazec, môžete použiť nasledujúci kód:

str = typ (číslo)

Ďalším spôsobom, ako to urobiť, je použiť funkciu str(). Ak chcete napríklad previesť reťazec na číslo, môžete použiť nasledujúci kód:

číslo = str(reťazec)

Súvisiace príspevky:

Pridať komentár