解决第7行中的语法错误

时间:2016-04-06 15:37:27

标签: python-3.x

这是我的代码,我得到语法错误:

def cube(number):
return number*number*number
def by_three(number):
if number % 3==0:
    cube(number)
    return number
else:
    return False

3 个答案:

答案 0 :(得分:0)

请注意,Python中的缩进非常重要,因为它定义了块的开始和结束位置。我想你的代码应该是:

def by_three(number):
    if number % 3==0:
         cube(number)
         return number
    else:
         return False

答案 1 :(得分:0)

这应该有效:

首先,正确缩进代码。

def by_three(number):
    if number % 3==0:
         cube(number)
         return number
    else:
         return False

对于cube(number),您可以使用base**exponent

def cube(number):
    return number**3

或者,number^3number*number*number相同,所以

def cube(number):
    return number*number*number

答案 2 :(得分:0)

除了缩进之外,您可能还想使用数学优先顺序并指示乘法*

这适用于python 3

#!/usr/local/bin/python3

def cube(number):
  return (number * number * number)

def by_three(number):
  if (number % 3) == 0:
    cubed = cube(number)
    return cubed
  else:
    return False

def main():
   x = 3
   output = '%d' % by_three(x)
   print(output)

if __name__ == "__main__":
  main()