Python 中的梅森数公式

Mersenne number formula in Python

梅森数是任何可以写成 2^p−1 的数 p 。例如,3 是梅森数 (2^2-1),31 (2^5-1) 也是。 编写一个接受指数 p 和 returns 相应梅森数的函数。

def mersenne number(p):
   return ((2**p)-1)

我刚刚开始我的编程课程,我陷入了简单的事情中。到目前为止,我已经写完了,但不知道如何写到最后,即使到目前为止是正确的。非常感谢您的帮助。

函数名称中不能有空格。

通常在Python中,我们在函数中使用下划线来分隔单词:

def mersenne_number(p):
   return ((2**p)-1)

Link 至: PEP 8 -- Python 代码的样式指南

没关系,除了一件事:函数的名称不能包含空格。所以你可能想改写 def mersenne_number(p) 。您可能想要验证 p 实际上是一个整数:

def mersenne_number(p: int) -> int:
   if not isinstance(p, int):
       raise TypeError("p must be integer")

   return ((2**p)-1)