假设我有一个随机的百万位数字= x,这样:
len(str(x)) = 1000000
通过查看一些解释,我可以使用x% (10 ** n)来查找最后n位数字。但是我不能理解为什么这是可行的。
这样,如果我想要找到x的最后11位数字,我的代码将是:
x % (10 ** 11)
有人能帮我解释一下吗?
发布于 2015-02-07 04:35:51
这样想吧:
x
的最后一位n
数字由下式给出:X% (10 ** n)
如果您不知道,模运算符(%)将两个数字相除,然后返回余数。
发布于 2015-02-07 04:30:03
%
返回除法后的余数,就像在小学学习长除法一样。所以7%3 = 1
。我猜你知道**
是幂运算,所以10**3 = 1000
。您的示例x % (10**11)
将x
除以10**11
,并告诉您余数。这一定是去掉10**11
的最大可能倍数后留下的数字,换句话说,就是最后的n
数字。
https://stackoverflow.com/questions/28378520
复制