假设我有一个随机的百万位数字 = x,这样:
len(str(x)) = 1000000
通过查看一些解释,我可以使用 x % (10 ** n) 来查找最后 n 位数字。但我无法理解为什么会这样。
如果我想找到 x 的最后 11 位数字,我的代码将是:
x % (10 ** 11)
有人可以帮我解释一下吗?
最佳答案
这样想:
- 如果你想找到一个数的最后一位,你可以将它除以10,除法的余数就是这个数的最后一位。
- 如果要求一个数的后2位,可以用它除以100,余数就是该数的后2位。
- 如果要求一个数的后三位,可以用它除以1000,余数就是该数的后三位。
如果你想找到一个数的最后n位,你可以将它除以10**n,余数就是最后n 数字的数字。在数学术语中,数字
x
的最后n
位由下式给出:x % (10 ** n)
如果您不知道,取模运算符 (%) 将两个数字相除并返回余数。
关于python - 从一百万位 int 中查找模数的最后一位数字;需要解释吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28378520/