我不是程序员,对编程还很陌生。尝试学习和理解 Python 使用类、函数和变量的方式。
我在下面创建了这段代码。
class Test:
number = 1
field = ['Address', 'Name', 'Age']
def book(self):
myDict = self.book
myDict = {number : field}
# Need my Output to be myDict = {1 : ['Address', 'Name', 'Age']}
return myDict
它在编译时不显示任何错误,但在调用该对象的实例时抛出
>>> te = Test()
>>> te.book()
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
te.book()
myDict = {number : field}
NameError: name 'number' is not defined
我的想法是,在函数外部声明的变量 将是全局,如果该变量在函数内部不可用,它将被调用到函数中功能,有人可以澄清我在理解这个概念时哪里出错了。
最佳答案
number
在方法之外声明,而不是全局声明。它是您创建的类的属性,因此您应该将其引用为 self.number
或 Test.number
。
关于python - 从类到字典的变量到 Python 中的函数的键和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45141660/