gpt4 book ai didi

python - 全局变量给出错误

转载 作者:行者123 更新时间:2023-11-30 23:35:58 25 4
gpt4 key购买 nike

g=0
def smooth(self, a, b):
k=0
c = self.name[a]
d = self.name[b]
e,f=c,d
while(e.get_p()!=f.get_p() and e.get_p()!=None and f.get_p()!=None):
k+=1
e=e.get_p()
f=f.get_p()
if(e.get_p==None and f.get_p()!=None):
global g
g+=1
d=d.get_p()
return self.smooth(a,d.name)
return(k,g)

忽略调用的函数,但在 if 语句中它不会更新 g 的值,并在使用值调用时给出错误未定义全局名称“g”。请帮助

最佳答案

在此代码中:

g=0
def smooth(self, a, b):

smooth 看起来像一个类实例方法,因此 g 看起来像一个类变量,而不是全局变量,因此 global关键字不起作用。尝试将其称为 MyClass.g(其中“MyClass”是类的实际名称),或 __class__.g

关于python - 全局变量给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16872014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com