Python'da ondalık sayıyı ikili eşdeğerine dönüştürmek için kullanabileceğim herhangi bir modül veya işlev var mı? İkil'i int ('[binary_value]', 2) kullanarak ondalık sayıya dönüştürebilirim, böylece kodu kendim yapmak için kod yazmadan tersi yapmanın herhangi bir yolu var mı?Python'da ondalık basamağa dönüştürme
cevap
tüm sayılar ikili olarak kaydedilir. ikili belirli bir sayının metin biçimini isterseniz, ben @ aaronasterling en yanıta katılabilir bin(i)
>>> bin(10)
'0b1010'
>>> 0b1010
10
"{0:#b}".format(my_int)
Başa dön Sıfır ile yazdırma için format: '" {0: 08b} ". Format (my_int)' –
kullanın.
def decToBin(n):
if n==0: return ''
else:
return decToBin(n/2) + str(n%2)
'int (bin (10), 2)' 10 'verir. int (decToBin (10)), "101" ve "int (decToBin (10), 2)" değerlerini verir. 5. Ayrıca, işlev isminizin “__future__ import division” veya python 3 – aaronasterling
@ aaron ile yineleme limitleri son nokta, // // (kesilmiş bölüm) 'e geçerek çözülebilir; Birincisi, iki dizenin sırasını 'dönüş' olarak özetlenerek. Bu yineleme burada bir anlam ifade etmiyor ('bin (n) [2:]' - ya da bir '' '' '' '' '' '' '' Python’un eski bir sürümünde kalıyorsanız, daha iyi olacaktır! ''. –
Bu harika! ** lambda ** yolu ile de gidebilirdi:] 'binary = lambda n: '' n == 0 başka ikili (n/2) + str (n% 2)' –
def dec_to_bin(x):
return int(bin(x)[2:])
Çok kolay işte: Eğer int içine yayınlayabileceğim olmayan bir ikili dize istiyorsanız Ancak, o zaman kurallı algoritmayı kullanabilirsiniz.
** - 1 ** - don' int dönüşü Ayrıca, dec_to_bin (-1) '' ValueError: base 10 ile int() için geçersiz değişkeni verir: 'b1' – Eric
bunu [2:] açıklayabilir misiniz? –
Bili (2) 'yi deneyin. '10' alamıyorsun. '0b10' olsun. Hex (2) '('0x2') ile aynı olası çukur. Yani ilk iki karakterin hepsini istiyorsun. Böylece ilk iki karakterden sonra başlayan bir dilim alırsınız. – leewz
Ayrıca da işleyebilir numpy modül
from numpy import binary_repr
bir işlev kullanabilirsiniz başında sıfır: önünde 0b olmadan
Definition: binary_repr(num, width=None)
Docstring:
Return the binary representation of the input number as a string.
This is equivalent to using base_repr with base 2, but about 25x
faster.
For negative numbers, if width is not given, a - sign is added to the
front. If width is given, the two's complement of the number is
returned, with respect to that width.
n=int(input('please enter the no. in decimal format: '))
x=n
k=[]
while (n>0):
a=int(float(n%2))
k.append(a)
n=(n-a)/2
k.append(0)
string=""
for j in k[::-1]:
string=string+str(j)
print('The binary no. for %d is %s'%(x, string))
:
"{0:b}".format(int)
Python 3.6 ile başlayarak 0123'ü de kullanabilirsiniz, --- PEP: tamamlanma uğruna
f"{int:b}"
Aşağıdaki hatayı aldım: 'TypeError: boş olmayan biçim dizesi object .__ format__'na iletildi –
: Eğer aşağıdaki işlemleri gerçekleştirebilirsiniz onun ikili eşdeğer sabit nokta gösterimi dönüştürmek istiyorsanız:
tamsayı almak ve kesirli kısım.
from decimal import * a = Decimal(3.625) a_split = (int(a//1),a%1)
- onun ikili gösteriminde fraksiyonel bölümünü dönüştürün. 2.
fr = a_split[1] str(int(fr*2)) + str(int(2*(fr*2)%1)) + ...
ile çarpın arda Bunu başarmak için Sen açıklama here okuyabilirsiniz.
- 1. Oktav'da iki ondalık basamağa yuvarlama
- 2. En Pythonic yolu * ondalık basamağa
- 3. Float değerini 2 ondalık basamağa yazdırma
- 4. SQL Query iki ondalık basamağa kırpmak için?
- 5. Ondalık dönüştürme ikiye mi?
- 6. nasıl ben python 100 ondalık basamağa irrasyonel sayı gösterebilir?
- 7. 2 ondalık basamağa numarasını biçimlendirmek için çalışılıyor jQuery
- 8. Sayıları yalnızca iki ondalık basamağa sahip olacak biçimde nasıl biçimlendiririm?
- 9. SSRS'de 1 ondalık basamağa sayı biçimlendirme nasıl yapılır?
- 10. Dönüştürme ondalık <-> onaltılık
- 11. Onaltılık dize ondalık kesime dönüştürme
- 12. Bir [] bayt içeren dizeleri ondalık değerlere dönüştürme
- 13. R-verileri ondalıktan ondalık alana dönüştürme
- 14. Ondalık sayıyı Java'daki BigInteger konumuna dönüştürme
- 15. SQL Dize için ondalık aygıta dönüştürme
- 16. 3 ondalık basamaklı HTML.EditorFor
- 17. Nümerik dizi veya pandalarla pythonda rutini sadeleştirme
- 18. Ayırmak ve 0 ondalık basamağa yuvarlamak için bir değişken nasıl ayarlayabilirim? Ruby
- 19. 2. Tur için ondalık basamak
- 20. Negatif Bir Dize Ondalık değerine dönüştürme nasıl yapılır?
- 21. T-SQL Ondalık basamaklara yuvarlama
- 22. Ondalık ve ondalık arasındaki fark
- 23. SPOJ PPATH, 4 basamaklı bir basamağı başka bir 4 basamaklı basamağa dönüştürme
- 24. Tam sayıları ondalık değerlere dönüştür
- 25. Negatif tamsayı ve ondalık değerler için doğrulama
- 26. java'da 9 basamağa kadar yazdırma yanıtı
- 27. to_d her zaman 2 ondalık basamakları yakutta döndürmek için
- 28. Ondalık virgül yerine ondalık virgül kullanarak değişken
- 29. Ondalık ondalık sayıları eşit olarak bölme
- 30. Nesneyi ondalık mı atacaksınız? (Null ondalık)
Ne "ondalık" ne de "ikili" ne düşündüğünüzü ifade eder. –