在类内部引用之前被赋值的本地变量

2024-09-28 01:32:04 发布

您现在位置:Python中文网/ 问答频道 /正文

情况是这样的

class Person(object):
    NumRid = 1
    def __init__(self, name, rid = NumRid):
        self.name = name
        self.rid = rid
        NumRid += 1

class Investor(Person):
    pass

然后我进入交互式python会话,并输入from file import * 然后 投资者('Bob') 它告诉我局部变量NumRid在赋值之前被引用,在NumRid += 1

从google上我可以看出,NumRid应该在类的本地命名空间中,并且可以从类函数中访问。。。。那这是怎么回事?我是否需要声明两者都是全局的;或者如果有一个,我是否可以键入一个神奇的单词让它在类名称空间中查找NumRid?


Tags: namefromselfobjectinitdef空间情况

热门问题