【发布时间】:2019-09-17 22:28:55
【问题描述】:
我希望客户端代码调用一个函数,该函数将用户输入的值分配给变量并将它们传递给一个对象以用作用户定义的属性。
但我无法为对象调用任何方法
我尝试在函数中包含对象的方法,但它似乎没有改变任何东西,同样的错误。
def function():
a = input("blahblah")
the_object = foo(a)
class foo(object):
def __init__(a):
self.a = a #This works fine
print(self.a)
def DoThing(): #This does not
print(self.a)
#Main
function()
the_object.DoThing()
我可以看到函数被调用,对象被创建。 但是当我尝试调用任何方法时,我不断收到错误
NameError:名称“the_object”未定义
【问题讨论】:
-
the_object 仅存在于您的 function() 函数中。在你的 function() 函数中返回 the_object,你可以在调用 function() 时为其分配一个变量名
标签: python function oop object nameerror