Python 通过if语句递增

Python 通过if语句递增,python,Python,我试图写一个代码,如果一个数字增加,那么通过一个if语句增加我的新值 由于上面的语句,我得到了一个无效的语法 我应该怎么做?赋值表达式运算符:=在中提到,将包含在python 3.8中。目前python的版本为3.7.2,因此此功能尚未发布 发布后,您的代码将如下所示: if pt.Z +=1 zHeight +=1 pt.Z += 1 当前的解决方法是在两个单独的语句中执行这些操作: if (pt.Z := pt.Z + 1): zHeight += 1 所以

我试图写一个代码,如果一个数字增加,那么通过一个if语句增加我的新值

由于上面的语句,我得到了一个无效的语法


我应该怎么做?

赋值表达式运算符:=在中提到,将包含在python 3.8中。目前python的版本为3.7.2,因此此功能尚未发布

发布后,您的代码将如下所示:

 if pt.Z +=1    

    zHeight +=1
pt.Z += 1
当前的解决方法是在两个单独的语句中执行这些操作:

if (pt.Z := pt.Z + 1):
    zHeight += 1

所以,你有一个类,比如说这个类叫做Point,你有一个对象pt,它是这个类的一个实例,你试图使它增加一个属性,比如说,Z,也会使另一个属性同时增加,比如,zHeight

可能有一些方法可以覆盖获取属性并设置属性时运行的例程,但更简单的方法是创建一个方法。而不是

pt.Z += 1
if pt.Z:
    zHeight += 1
您将在Point类中实现一个名为increment_Z的函数,如下所示:

 if pt.Z +=1    

    zHeight +=1
pt.Z += 1
然后,稍后,您将调用该函数,而不是直接访问属性:

def increment_Z(self, by_how_much=1):
    self.Z += by_how_much
    self.zHeight += by_how_much

嗨,安东尼,欢迎你!看起来在if语句后缺少冒号。除此之外,您所说的“如果一个数字增加”是什么意思,if语句如何知道它增加了?如果pt.Z>某个数字,那么可以增加另一个。您提供的代码存在严重的格式和逻辑问题。目前还不清楚这些变量来自何处,以及您实际希望如何处理这些变量。要么张贴完整的代码,要么先将其正确格式化。从您提供的代码片段中,您在if语句之后缺少一个:并且您正在if语句中执行赋值,这在Python中当前不受支持。您可能想阅读数十个Python教程中的任何一个,并学习语言。您是否想说,自从上次我检查它以来,pt.Z是否增加了一个?我想他真的在问,每当pt.Z增加一个,我也想在zHeight中增加一个。