Python实现使用dir获取类的方法列表


Posted in Python onDecember 24, 2019

使用Python的内置方法dir,可以范围一个模块中定义的名字的列表。

官方解释是:

Docstring:
dir([object]) -> list of strings

If called without an argument, return the names in the current scope.
Else, return an alphabetized list of names comprising (some of) the attributes
of the given object, and of attributes reachable from it.
If the object supplies a method named __dir__, it will be used; otherwise
the default dir() logic is used and returns:
 for a module object: the module's attributes.
 for a class object: its attributes, and recursively the attributes
  of its bases.
 for any other object: its attributes, its class's attributes, and
  recursively the attributes of its class's base classes.

通过dir方法,我们可以在一个类的内部,获取当前类的名字满足某些特征的所有方法。

下面是一个例子:

class A(object):
  def A_X_1(self):
    pass

  def A_X_2(self):
    pass

  def A_X_3(self):
    pass

  def get_A_X_methods(self):
    return filter(lambda x: x.startswith('A_X') and callable(getattr(self,x)), dir(self))

执行:

print A().get_A_X_methods()

输出结果为:

> ['A_X_1', 'A_X_2', 'A_X_3']

以上这篇Python实现使用dir获取类的方法列表就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
Apr 24 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
Oct 13 Python
python+selenium实现163邮箱自动登陆的方法
Dec 31 Python
分数霸榜! python助你微信跳一跳拿高分
Jan 08 Python
python使用PIL模块获取图片像素点的方法
Jan 08 Python
Python实现爬取马云的微博功能示例
Feb 16 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
python的依赖管理的实现
May 14 Python
jupyter notebook中新建cell的方法与快捷键操作
Apr 22 Python
python实现数字炸弹游戏
Jul 17 Python
用python-webdriver实现自动填表的示例代码
Jan 13 Python
Python入门基础之数字字符串与列表
Feb 01 Python
django数据模型on_delete, db_constraint的使用详解
Dec 24 #Python
Python中filter与lambda的结合使用详解
Dec 24 #Python
节日快乐! Python画一棵圣诞树送给你
Dec 24 #Python
Python 3 使用Pillow生成漂亮的分形树图片
Dec 24 #Python
python保存log日志,实现用log日志画图
Dec 24 #Python
Django 限制访问频率的思路详解
Dec 24 #Python
python 统计文件中的字符串数目示例
Dec 24 #Python
You might like
php 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
php 常用的系统函数
2017/02/07 PHP
搭建自己的PHP MVC框架详解
2017/08/16 PHP
php中的依赖注入实例详解
2019/08/14 PHP
用javascript实现读取txt文档的脚本
2007/07/20 Javascript
JavaScript获取XML数据附示例截图
2014/03/05 Javascript
jquery解析xml字符串示例分享
2014/03/25 Javascript
jQuery中position()方法用法实例
2015/01/16 Javascript
JavaScript判断一个字符串是否包含指定子字符串的方法
2015/03/18 Javascript
jQuery实现每隔几条元素增加1条线的方法
2016/06/27 Javascript
jQuery对table表格进行增删改查
2020/12/22 Javascript
JS实现动态给标签控件添加事件的方法示例
2017/05/13 Javascript
详解vuejs之v-for列表渲染
2017/06/22 Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
2018/08/31 Javascript
vue+element-ui表格封装tag标签使用插槽
2020/06/18 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
python实现从web抓取文档的方法
2014/09/26 Python
使用Python编写简单的端口扫描器的实例分享
2015/12/18 Python
Python while 循环使用的简单实例
2016/06/08 Python
Python3简单实例计算同花的概率代码
2017/12/06 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
2017/12/14 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
Python re 模块findall() 函数返回值展现方式解析
2019/08/09 Python
关于多元线性回归分析——Python&SPSS
2020/02/24 Python
Python3实现打印任意宽度的菱形代码
2020/04/12 Python
python基于opencv 实现图像时钟
2021/01/04 Python
Vita Fede官网:在意大利手工制作,在纽约市设计
2019/10/25 全球购物
世界上最大的字体市场:MyFonts
2020/01/10 全球购物
主管竞聘书范文
2014/03/31 职场文书
小学师德标兵先进事迹材料
2014/05/25 职场文书
留守儿童工作方案
2014/06/02 职场文书
部门群众路线教育实践活动对照检查材料思想汇报
2014/10/07 职场文书
2015年工程师工作总结
2015/04/30 职场文书
一文带你理解vue创建一个后台管理系统流程(Vue+Element)
2021/05/18 Vue.js
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers
Python数组变形的几种实现方法
2022/05/30 Python