如何立方数字

问题描述 投票:2回答:7

我今天刚开始使用Python作为我的课程,我的一个问题是在Python中使用数字。我知道这样做的方法是x^3,但这在Python中不起作用。我只是想知道我将如何做到这一点。

这是我到目前为止所尝试的,但正如您所看到的,我不断收到语法错误:

>>> def volume (v) :
    return v^3
volume(4)
SyntaxError: invalid syntax
python syntax syntax-error exponentiation
7个回答
14
投票

Python使用** operator进行求幂,而不是^ operator(这是一个按位异或):

>>> 3*3*3
27
>>>
>>> 3**3  # This is the same as the above
27
>>>

但请注意,由于volume(4)之前没有换行符,因此引发了语法错误:

>>> def volume(v):
...     return v**3
... volume(4)
  File "<stdin>", line 3
    volume(4)
         ^
SyntaxError: invalid syntax
>>>
>>> def volume(v):
...     return v**3
...                  # Newline
>>> volume(4)
64
>>>

当你在交互式解释器中时,换行允许Python知道函数volume的定义已经完成。


3
投票

实际上,不同的符号在不同的编程语言中是不同的。在某些语言中,^表示指数,但在Python中,指数运算符符号为**

>>> 3**3
27

^符号用于按位'xor'操作:

>>> 1^1
0
>>> 1^0
1

阅读operator module上的文档,了解Python如何真正对待这些符号。


2
投票

使用*键两次

def volume (v) :
    return v**3
volume(4)

1
投票

您可以使用**运算符进行指数计算。

def volume(v)
    return v**3

1
投票

在数字和功率之间使用两个星号。数学中的前2^5是python中的2**5。你也可以沿着math.pow(100, 2) = 10000.0做点什么。


0
投票

最好的方法是

cube = lambda x: x**3

cube(3)

但是另一个解决方案就像产生相同的结果

cube = lambda x: x*x**2

cube(3)

改变解决方案就好了

math.pow(3,3)

all将返回3号的立方体。


-1
投票

我尝试使用简单的print函数,您可以使用**运算符计算多维数据集

a = int(input())
b = int(input())

print(a**3)
print(b**3)
© www.soinside.com 2019 - 2024. All rights reserved.