美文网首页
python中为什么万物皆对象

python中为什么万物皆对象

作者: 王峰芝 | 来源:发表于2018-01-03 15:11 被阅读0次

    在python环境中我们输出一个没有声明的变量a 为什么会报name 'a' is not defined。为什么是name 而不是variable。

    因为在python中把所有的函数名,变量名、类型名等等标识符都称为名字。名字总是在名字空间中与一个对象关联。名字本身并不知道目标的具体信息,它仅仅负责"指路"

    >>> a = 10

    >>> globals()

    {'__spec__': None, 'a': 10, '__name__': '__main__', '__loader__':, '__builtins__':, '

    __package__': None, '__doc__': None}

    上面赋值了一个值10,并将于变量‘a’关联起来,也就是通过赋值语句我们就得到{‘a’:10,..}这样的对象关联关系。并且还是以dict形式实现的。

    通过名字访问对象时,就从该名字空间中查找其关联的目标对象。我们完全可以绕开赋值语句,直

    接在名字空间中添加名字和对象的关联。

    >>> globals()['b'] = 100

    >>> b

    100

    名字空间不止可以保存a这样的变量,他可以是认识类型。要知道python是把一切都当做对象的。

    相关文章

      网友评论

          本文标题:python中为什么万物皆对象

          本文链接:https://www.haomeiwen.com/subject/lmbhnxtx.html