gpt4 book ai didi

function - 名称错误 : global name not defined when calling method inside class

转载 作者:行者123 更新时间:2023-12-02 21:40:00 25 4
gpt4 key购买 nike

我试图从我的主函数中调用同一个类中的不同函数,我似乎可以找出错误所在。

我不断收到与未定义函数相关的错误,但我不知道如何解决它:

NameError: global name 'results' is not defined

class Darts:
def main() :
print results()

def results() :
round_result_totals = "Stuff"
return round_result_totals

#RUNNING CODE
main()

最佳答案

确保您定义正确 self在您的函数中,并在执行其他操作之前先初始化对象。您不能只调用 function来自class无需创建 instance其中class并调用 function从那instance (不是类(class))。通常你想要一个__init__在你的Python类中。

class Darts:
def __init__(self):
pass

def main(self):
print(self.results())

def results(self):
round_result_totals = "Stuff"
return round_result_totals

Dart1 = Darts()
Dart1.main()

如果你想使用变量,self对于封装也至关重要。

class Darts:
def __init__(self):
self.a = 500

def main(self):
self.a += 1
print(self.a)


Dart1 = Darts()
Dart1.main()

关于function - 名称错误 : global name not defined when calling method inside class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29886867/

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