15 ŞUBAT 2010, PAZARTESİ
python verilen sayısal bir taban bir dizeye bir tamsayı dönüştürmek
Python verilen temel bir dize bir tamsayı kolay yaratılması yoluyla sağlar
int(str,base).
Tersini gerçekleştirmek istiyorum: bir tamsayı bir dize oluşturma.
yani ben bazı işlev istiyorum int2base(sayı,taban)
öyle ki:
int( int2base( X , BASE ) , BASE ) == X
fonksiyon adı/argüman sırası önemli değildir
Herhangi bir sayı X ve üs için int() kabul eder.
Bu aslında kolay bir soru ... ancak, bir şeyleri kaçırıyor olmalıyım gibi hissediyorum tarif daha yazmak için kolay bir işlevdir.
Fonksiyonları bin,Ekim,hex biliyorum; ama birkaç nedenden dolayı onları kullanın:
- Bu görev ile uyumluluk ihtiyacım var python eski sürümlerine (2.2) değildir
- Farklı üsleri aynı şekilde çağrılabilir genel bir çözüm istiyorum
- Üsleri 2,8,16 dışında izin vermek istiyorum
İlgili
CEVAP
15 ŞUBAT 2010, PAZARTESİ
def baseN(num,b,numerals="0123456789abcdefghijklmnopqrstuvwxyz"):
return ((num == 0) and numerals[0]) or (baseN(num // b, b, numerals).lstrip(numerals[0]) numerals[num % b])
Bunu Paylaş:
Nasıl Python ile url-güvenli en kısa d...
Güvenli şamandıra python tamsayı dönüş...
Nasıl Python datetime tamsayı zaman da...
Bir python 'type' bir dizeye...
eğer X bir dizeye bir tamsayı dönüştür...