python利用dir函数查看类中所有成员函数示例代码


Posted in Python onSeptember 08, 2017

前言

如果一个类是别人编写的,又没有帮助文档,怎么样来查看所有成员函数呢?本文详细给大家介绍了关于python用dir函数查看类中所有成员函数的相关内容,下面话不多说了,来一起看看详细的介绍吧。

可以使用下面的代码:

# File: builtin-dir-example-2.py 
 
class A: 
 def a(self): 
  pass 
 def b(self): 
  pass 
 
class B(A): 
 def c(self): 
  pass 
 def d(self): 
  pass 
 
def getmembers(klass, members=None): 
 # get a list of all class members, ordered by class 
 if members is None: 
  members = [] 
 for k in klass.__bases__: 
  getmembers(k, members) 
 for m in dir(klass): 
  if m not in members: 
   members.append(m) 
 return members 
 
print('A=> :', getmembers(A)) 
print() 
print('B=> :', getmembers(B)) 
print() 
print('IOError=> :', getmembers(IOError))

输出结果如下:

>>> 
==== RESTART: D:/work/csdn/python_Game1/example/builtin-dir-example-2.py ====
A=> : ['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__dict__', '__module__', '__weakref__', 'a', 'b']


B=> : ['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__dict__', '__module__', '__weakref__', 'a', 'b', 'c', 'd']


IOError=> : ['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__cause__', '__context__', '__dict__', '__setstate__', '__suppress_context__', '__traceback__', 'args', 'with_traceback', 'characters_written', 'errno', 'filename', 'filename2', 'strerror', 'winerror']
>>>

在这个例子里,输出基类A的成员函数,输出派生类B的成员函数。

dir()内置函数作用

python内置方法有很多,无论是初学还是经通python的程序员都不能全部记住所有方法,这时候dir()函数就非常有用了。使用dir()函数可以查看对像内所有属于及方法,在python中任何东西都是对像,一种数据类型,一个模块等,都有自己的属性和方法,除了常用方法外,其它的你不需要全部记住它,交给dir()函数就好了。

dir()函数使用方法

dir()函数操作方法很简单,只需要把你想要查询和对像添写到( )括号中就可以使用了。

例如你想查看列表都有哪些方法,你可以在( )中直接传入空列表对像[ ]或是一个列表数据类型的变量名,像下边这样操作:

>>>dir([ ])


x = ['a','b']
>>>dir(x)

python利用dir函数查看类中所有成员函数示例代码

两种操作方法所得结果一样,都是查看列表都有哪些操作方法及属性的。如果你想查字符串,只要把()中的参数变量名或空字符串' '就可以了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
使用Python标准库中的wave模块绘制乐谱的简单教程
Mar 30 Python
Python中你应该知道的一些内置函数
Mar 31 Python
python安装教程 Pycharm安装详细教程
May 02 Python
Python实现矩阵转置的方法分析
Nov 24 Python
Python给你的头像加上圣诞帽
Jan 04 Python
python微信公众号开发简单流程
Mar 23 Python
Python计算一个点到所有点的欧式距离实现方法
Jul 04 Python
django-filter和普通查询的例子
Aug 12 Python
将python依赖包打包成window下可执行文件bat方式
Dec 26 Python
3种python调用其他脚本的方法
Jan 06 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
Jan 09 Python
解决python replace函数替换无效问题
Jan 18 Python
Python使用回溯法子集树模板解决爬楼梯问题示例
Sep 08 #Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
Sep 08 #Python
python中实现指定时间调用函数示例代码
Sep 08 #Python
Python基于回溯法子集树模板解决最佳作业调度问题示例
Sep 08 #Python
python中实现延时回调普通函数示例代码
Sep 08 #Python
TensorFlow安装及jupyter notebook配置方法
Sep 08 #Python
老生常谈Python startswith()函数与endswith函数
Sep 08 #Python
You might like
php file_exists 检查文件或目录是否存在的函数
2010/05/10 PHP
php地址引用(php地址引用的效率问题)
2012/03/23 PHP
php判断是否为json格式的方法
2014/03/04 PHP
PHP随手笔记整理之PHP脚本和JAVA连接mysql数据库
2015/11/25 PHP
PHP实现接收二进制流转换成图片的方法
2017/01/10 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
2010/06/18 Javascript
js 判断计算字符串长度/判断空的简单方法
2013/08/05 Javascript
页面刷新时记住滚动条的位置jquery代码
2014/06/17 Javascript
Javascript模拟加速运动与减速运动代码分享
2014/12/11 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
简单封装js的dom查询实例代码
2016/07/08 Javascript
javascript this详细介绍
2016/09/19 Javascript
AngularJS 实现购物车全选反选功能
2017/10/24 Javascript
手写Node静态资源服务器的实现方法
2018/03/20 Javascript
解决vue数组中对象属性变化页面不渲染问题
2018/08/09 Javascript
深入学习TypeScript 、React、 Redux和Ant-Design的最佳实践
2019/06/17 Javascript
Python使用metaclass实现Singleton模式的方法
2015/05/05 Python
详解解决Python memory error的问题(四种解决方案)
2019/08/08 Python
python实现大战外星人小游戏实例代码
2019/12/26 Python
Python中os模块功能与用法详解
2020/02/26 Python
Python+appium框架原生代码实现App自动化测试详解
2020/03/06 Python
Python多线程:主线程等待所有子线程结束代码
2020/04/25 Python
HTML+CSS3 模仿Windows7 桌面效果
2010/06/17 HTML / CSS
使用CSS3实现多列布局与多背景的技巧
2016/02/29 HTML / CSS
friso美素佳儿官方海外旗舰店:荷兰原产原罐
2017/07/03 全球购物
香港最大的洋酒零售连锁店:屈臣氏酒窖(Watson’s Wine)
2018/12/10 全球购物
巴西最大的玩具连锁店:Ri Happy
2020/06/17 全球购物
资深生产主管自我评价
2013/09/22 职场文书
如何编写优秀的食品项目创业计划书
2014/01/23 职场文书
军训学生自我鉴定
2014/02/12 职场文书
户外活动策划方案
2014/03/12 职场文书
《李时珍夜宿古寺》教学反思
2014/04/09 职场文书
外语专业毕业生自荐信
2014/04/14 职场文书
酒店财务经理岗位职责
2015/04/08 职场文书
幼儿教师远程研修感悟
2015/11/18 职场文书