2024-04-27 23:56:41 发布
网友
要正确处理正整数和负整数:
>>> x = -23457689 >>> print abs(x) % 1000 689
作为一个函数,您可以选择要保留的前导位数:
import math def extract_digits(integer, digits=3, keep_sign=False): sign = 1 if not keep_sign else int(math.copysign(1, integer)) return abs(integer) % (10**digits) * sign
避免转换为str的约束太迂腐了。如果数字的格式可能会改变,或者需要保留的尾随数字的格式会改变,那么转换成str将是一个很好的方法。
str
>>> int(str(x)[-3:]) ^^^^^ Easier to modify this than shoe-horning the mod function.
使用%操作:
%
>>> x = 23457689 >>> x % 1000 689
%是mod(即^{})操作。
mod
要正确处理正整数和负整数:
作为一个函数,您可以选择要保留的前导位数:
避免转换为
str
的约束太迂腐了。如果数字的格式可能会改变,或者需要保留的尾随数字的格式会改变,那么转换成str
将是一个很好的方法。使用
%
操作:%
是mod
(即^{相关问题 更多 >
编程相关推荐