【问题标题】:When making an and statement, I get an Syntax Error进行 and 语句时,出现语法错误
【发布时间】:2019-04-21 15:19:15
【问题描述】:

在制作税收计算器时,我似乎继续在以下代码行中的“=”处收到错误:

elif int(vermogen) >= 30001 and <= 100800:

但我找不到解决此问题的方法。我尝试删除整数,但这没有帮助,我还尝试将我的符号更改为 > 和 = 但这也没有帮助。我想我犯了一个明显的错误,但我似乎没有找到它。当删除“

vermogen = input('Hoeveelheid vermogen: ')
N_schijf1 = 30000
N_schijf2 = 70800
N_schijf3 = 877200

P_schijf2 = 424.8
P_schijf3 = 11403.6

if int(vermogen) <= 30000:
    print("Je betaalt 0 euro aan vermogensbelasting")

elif int(vermogen) >= 30001 and <= 100800:
    vermogen_betalen = int(vermogen) - N_schijf1
    betalen_vermogen = vermogen_betalen * 0.006
    print("Je betaalt",betalen_vermogen,"euro aan vermogensbelasting")

elif int(vermogen) >= 100801 and <= 978000:
    vermogen_betalen = int(vermogen) - N_schijf1 - P_schijf2
    betalen_vermogen = vermogen_betalen * 0.013
    tebetalen_vermogen = P_schijf2 + betalen_vermogen
    print("Je betaalt",tebetalen_vermogen,"euro aan vermogensbelasting")

elif int(vermogen) >= 978001:
    vermogen_betalen = int(vermogen) - N_schijf1 - P_schijf2 - P_schijf3
    betalen_vermogen = vermogen_betalen * 0.0161
    tebetalen_vermogen = P_schijf2 + P_schijf3 + betalen_vermogen
    print("Je betaalt",tebetalen_vermogen,"euro aan vermogensbelasting")

print("Test")

【问题讨论】:

  • and 用于加入完整条件。操作数不能跨越and。你可以使用30001 &lt;= int(vermogen) &lt;= 100800
  • elif int(vermogen) &gt;= 30001 and &lt;= 100800 应该是elif int(vermogen) &gt;= 30001 and int(vermogen) &lt;= 100800

标签: python if-statement syntax-error


【解决方案1】:

and 的每一侧都必须有一个完整的条件。操作数不会跨越 and 进入下一个条件。

你可以写:

int(vermogen) >= 30001 and int(vermogen) <= 100800

或者只是:

30001 <= int(vermogen) <= 100800

因为 Python 支持chaining of comparisons

【讨论】:

    【解决方案2】:

    您需要更改您的 if 来自:

    elif int(vermogen) >= 100801 and <= 978000:
    elif int(vermogen) >= 30001 and <= 100800:
    

    elif int(vermogen) >= 100801 and int(vermogen) <= 978000:
    elif int(vermogen) >= 30001 and int(vermogen) <= 100800:
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-21
      • 2017-08-23
      • 2019-11-09
      • 2012-03-26
      • 1970-01-01
      • 1970-01-01
      • 2016-10-05
      相关资源
      最近更新 更多