Python'da temel dönüştürmeyle ilgili temel sorun, çok yavaş olabilmesidir.
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
Bu, bir sayıyı belirli bir tabana dönüştüren bir işlev için bir işlev tanımıdır. Taban 2'den küçük veya 10'dan büyükse ve 16'ya eşit değilse, bir hata mesajı yazdırır. Aksi takdirde, sayının ve tabanın modülünü hesaplar ve bunu "mod" değişkeninde saklar. Ardından, sayı 0'a eşit olana kadar sayının ve tabanın modülünü hesaplamaya devam ettiği bir while döngüsüne girer. Devam ettikçe her sonucu “converted_string” değişkeninde saklar. Son olarak, "converted_string" dizesini döndürür.
Veri Türü Dönüşümü
Python'da veri türlerini dönüştürmenin birkaç yolu vardır. En basit yol, type() işlevini kullanmaktır. Örneğin, bir sayıyı dizeye dönüştürmek için aşağıdaki kodu kullanabilirsiniz:
str = tür(sayı)
Bunu yapmanın başka bir yolu da str() işlevini kullanmaktır. Örneğin, bir diziyi sayıya dönüştürmek için aşağıdaki kodu kullanabilirsiniz:
sayı = str(dize)