为什么我只能+ int到一个变量(Python)

时间:2018-05-30 00:27:41

标签: python variables

这更像是一个好奇的问题,而不是编码问题,但它有助于我理解Python的工作原理。所以我的问题是,为什么我只能定义一个变量并添加我的int值?例如:

pancake = 9
pancake + 1
print(pancake)

我对Python为什么不添加1到9感兴趣,因为从技术上来说我说9 + 1对吗?

3 个答案:

答案 0 :(得分:1)

您需要使用+=运算符(而不是+)来修改左侧的变量。否则,结果总和不会分配给您尝试打印的变量。

有关+=运算符的详细信息,请参阅此主题。

What exactly does += do in python?

基本上,+=会将值添加到右侧,并将结果分配给左侧的变量。单独使用+不会修改左侧的变量。

答案 1 :(得分:0)

您可以,但您应该使用+ =运算符将值重新分配给pancake变量

pancake = 9
pancake += 1
print(pancake)

答案 2 :(得分:0)

那是因为你这样做pancake + 1 您正在调用pancake对象的__add__方法,该方法是类int的一个实例,此方法返回此对象“self”的值加上运算符+右侧的值的总和。这就是为什么pancake对象的值没有更新的原因,如果你研究一下python的魔术方法,你可以更好地理解这种情况