为什么这不起作用(不能分配运算符)在Python中

时间:2013-11-13 13:19:36

标签: python assign

它表示无法分配运营商。 为什么这不起作用?

print ("Welkom")
print ("Voer het huidige bedrag op uw rekening in")
currentbank = input ("huidige bedrag:€")
print ("Hoeveel wil je erafhalen")
minusbank = input ("min:€")
print ("Je hebt als je dit doet:")
afterbank = false 
afterbank = currentbank - minusbank
print ("Dankjewel dat je dit programma gebruikt hebt")

“afterbank = currentbank - minusbank”有这个错误:

  

TypeError:不支持的操作数类型 - :'str'和'str'

3 个答案:

答案 0 :(得分:2)

false拼写为False(大写F)。

我不清楚currentbank-minusbank=afterbank背后的意图,但它不是有效的代码。

答案 1 :(得分:1)

两件事:

afterbank=false 

你应该拼写为False。在Python中,TrueFalse拼写为大写字母。

以下行也不起作用(不正确):

currentbank-minusbank=afterbank

我认为你的意思是:

afterbank = currentbank - minusbank

表示您从minusbank中减去currentbank,并将结果存储在afterbank

答案 2 :(得分:0)

您正尝试在表达式上使用赋值:

currentbank-minusbank=afterbank

这不起作用;这里没有将指定给的名称。也许你想在这里测试平等性?

currentbank - minusbank == afterbank

现在您有一个有效的表达式,但结果(TrueFalse)将被忽略。

你的编辑也表明你使用的是一个你没有定义的名字; false被视为名称,而不是值False,因此它会警告您NameError可能会在那里被提升。

你想要显示总和的结果:

afterbank = currentbank - minusbank
print("Nu heb je", afterbank, "over")