带掩码的十进制数的最后两位数?
Last two digits of decimal number with a mask?
要获取十进制数的最后 N 位,我通常将其转换为字符串。例如,对于两位数字:
n = 129387
int((str(n)[-2:]))
# 87
对于二进制,使用掩码来执行此操作相对简单,例如:
n = 0b00101001
'{:02b}'.format(0b00101001& 0b11)
# '01'
# -- or --
'{:02b}'.format(0b00101001& 0x3)
# '01'
是否可以对十进制数应用掩码以获取最后两位数字,如上例中的 87
?
您指的是 mod 运算符,例如:
In []:
129387 % 100 # 10**2
Out[]:
87
一般情况是 base**n
,其中 n
是 base
中的位数,例如二进制大小写:
In []:
format(0b00101001 % 2**2, '02b')
Out[]:
'01'
In []:
format(0b00101001 % 2**4, '02b')
Out[]:
'1001'
要获取十进制数的最后 N 位,我通常将其转换为字符串。例如,对于两位数字:
n = 129387
int((str(n)[-2:]))
# 87
对于二进制,使用掩码来执行此操作相对简单,例如:
n = 0b00101001
'{:02b}'.format(0b00101001& 0b11)
# '01'
# -- or --
'{:02b}'.format(0b00101001& 0x3)
# '01'
是否可以对十进制数应用掩码以获取最后两位数字,如上例中的 87
?
您指的是 mod 运算符,例如:
In []:
129387 % 100 # 10**2
Out[]:
87
一般情况是 base**n
,其中 n
是 base
中的位数,例如二进制大小写:
In []:
format(0b00101001 % 2**2, '02b')
Out[]:
'01'
In []:
format(0b00101001 % 2**4, '02b')
Out[]:
'1001'