位置: 编程技术 - 正文
推荐整理分享基于Python __dict__与dir()的区别详解(基于专业性的家校双向互动,需要家长的学校教育参与),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:基于网络创新形成的大数据的最突出特征是什么?( ),基于stm32的毕业设计,基于stm32的100个毕业设计,基于stm32的毕业设计,基于专业性的家校双向互动,需要家长的学校教育参与,基于专业性的家校双向互动,需要家长的学校教育参与,基于核心素养下的大单元教学设计,基于核心素养下的大单元教学设计,内容如对您有帮助,希望把文章链接给更多的朋友!
Python下一切皆对象,每个对象都有多个属性(attribute),Python对属性有一套统一的管理方案。
__dict__与dir()的区别:
dir()是一个函数,返回的是list;
__dict__是一个字典,键为属性名,值为属性值;
dir()用来寻找一个对象的所有属性,包括__dict__中的属性,__dict__是dir()的子集;
并不是所有对象都拥有__dict__属性。许多内建类型就没有__dict__属性,如list,此时就需要用dir()来列出对象的所有属性。
__dict__属性
__dict__是用来存储对象属性的一个字典,其键为属性名,值为属性的值。
从上述代码可知,
实例的__dict__仅存储与该实例相关的实例属性,
正是因为实例的__dict__属性,每个实例的实例属性才会互不影响。
类的__dict__存储所有实例共享的变量和函数(类属性,方法等),类的__dict__并不包含其父类的属性。
dir()函数
dir()是Python提供的一个API函数,dir()函数会自动寻找一个对象的所有属性(包括从父类中继承的属性)。
一个实例的__dict__属性仅仅是那个实例的实例属性的集合,并不包含该实例的所有有效属性。所以如果想获取一个对象所有有效属性,应使用dir()。
结论
dir()函数会自动寻找一个对象的所有属性,包括__dict__中的属性。
__dict__是dir()的子集,dir()包含__dict__中的属性。
以上这篇基于Python __dict__与dir()的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。
Python 判断是否为质数或素数的实例 一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2,3,5,7等),换句话说就是该数除了1和它本身以外不再有其他的因数。首先我
Android分包MultiDex策略详解 1.分包背景这里首先介绍下MultiDex的产生背景。当Android系统安装一个应用的时候,有一步是对Dex进行优化,这个过程有一个专门的工具来处理,叫DexOpt。
浅谈Python由__dict__和dir()引发的一些思考 关于__dict__和dir()的区别和作用请参考这篇文章:基于Python__dict__与dir()的区别详解说下我当时遇到的问题:classDemo:def__init__(self,name,age):self.name=nameself.age=aged
上一篇:浅谈使用Python变量时要避免的3个错误(python 变参)
下一篇:Python 判断是否为质数或素数的实例(python中判断)
友情链接: 武汉网站建设