为什么我会收到“SyntaxError:‘无效语法’”这个“else”语句?

问题描述 投票:0回答:4

我正在尝试在 Python 中定义一个函数,但我不断收到“SyntaxError:'无效语法'”:

def Change_in_price(x):
    if x > 0 :
        return 'increase'
    elif x == 0 :
        return 'no change'
    else x < 0 :
        return 'decrease'

有什么问题吗?

python
4个回答
2
投票

您可以使用:

def Change_in_price(x):
    if x > 0 :
        return 'increase'
    elif x == 0 :
        return 'no change'
    else:
        return 'decrease'

或者这个:

def Change_in_price(x):
    if x > 0 :
        return 'increase'
    elif x == 0 :
        return 'no change'
    elif x < 0 :
        return 'decrease'

1
投票

else
是备份,不需要条件即可执行。

def Change_in_price(x):
    if x > 0:
        return 'increase'
    elif x == 0:
        return 'no change'
    else:  # Else does not need  a condition
        return 'decrease'

0
投票

试试这个:

def change_in_price(x):
   if x > 0 :
       return 'increase'
   elif x == 0 :
       return 'no change'
   else :
       return 'decrease'

0
投票

你会得到“SyntaxError:'无效语法'”,因为 else 是一个备份,如果你的所有条件都没有发生,那么你在 else 下设置的内容才会发生

您的代码应如下所示:

def Change_in_price(x):
    if x > 0:
        return 'increase'
    elif x == 0:
        return 'no change'
    else:
        return 'decrease'
© www.soinside.com 2019 - 2024. All rights reserved.