簡體   English   中英

從整數中刪除最后一位數字並在python中放入零

[英]Remove last digit from integer and put zero in python

我有一個小代碼,它將整數轉換為10位二進制並將其形成為整數:

a = 2251
binary = bin(int(a))[2:].zfill(15)
print binary

結果如下:

100011001011

之后,我想從100011001011刪除最后四位數字,並用零代替,這意味着我的最終答案應該是:

100011000000

請提出任何好主意...

您可以通過一些簡單的移位來做到這一點

>>> a = 2251
>>> a = (a >> 4) << 4  # <--
>>> print format(a, 'b')
100011000000

為了演示正在發生的事情,假設a具有二進制表示1111 1111

a             == 11111111

a >> 4        == 00001111

(a >> 4) << 4 == 11110000

您可以使用簡單的按位運算:

>>> a = 2251
>>> a = a & ~0b1111
>>> print format(a, 'b')
100011000000

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM