我是python的新手,正在尝试一些东西。我编写的以下代码在测试时返回了值1。谁能解释为什么?
def cube(x):
return x < 2 + x
result = (cube(5) ** 3)
print(result)
答案 0 :(得分:2)
您的功能
def cube(x):
return x < 2 + x
返回x < 2 + x
。
x < 2 + x
检查x
是否小于2 + x
,然后返回true
。如果将其放入您的result
计算中,您将:
result = ( true ** 3 )
将数学运算符应用于布尔值时,如果1
,则将它们转换为true
,如果0
,则将它们转换为false
。因此,您的result
计算等于
result = ( 1 ** 3 )
1。