品易云推流 关闭
文章详情页
文章 > Python基础教程 > Python __dir__用法:列出对象的所有属性(方法)名

Python __dir__用法:列出对象的所有属性(方法)名

头像

silencement

2019-07-06 14:52:084101浏览 · 0收藏 · 0评论

对象的 __dir__ 方法用于列出该对象内部的所有属性(包括方法)名,该方法将会返回包含所有属性(方法)名的序列。

当程序对某个对象执行 dir(object) 函数时,实际上就是将该对象的 __dir__() 方法返回值进行排序,然后包装成列表。

例如,如下程序示范了 __dir__() 方法的功能:

class Item:
    def __init__ (self, name, price):
        self.name = name
        self.price = price
    def info ():
        pass
# 创建一个Item对象,将之赋给im变量
im = Item('鼠标', 29.8)
print(im.__dir__())  # 返回所有属性(包括方法)组成列表
print(dir(im))  # 返回所有属性(包括方法)排序之后的列表

运行上面程序,可以看到程序不仅会输出我们为对象定义的 name、 price、 info 三个属性和方法,而且还有大量系统内置的属性和方法,如前面章节介绍的 __repr__  和 __del__ 方法。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图