python 下的 dir 很神奇,为什么没有人用呢?是不是有什么副作用?

Python/PHP/Perl 开发与设计
回复
头像
Hello World!
帖子: 3051
注册时间: 2008-06-23 15:19
系统: ���������
来自: 北欧某国
送出感谢: 14 次
接收感谢: 2 次
联系:

python 下的 dir 很神奇,为什么没有人用呢?是不是有什么副作用?

#1

帖子 Hello World! » 2013-04-12 17:54

使用第三方软件包,经常出现不知到一个实例是什么类的情况。我最近使用

代码: 全选

		if 'setPointSize' in dir(self.p0.renderer):
			self.p0.renderer.setPointSize(self.lds[23]['value'])
这样的方法进行判断,感觉挺好用的。但是为什么没见别人用呢?是不是用起来有风险呢?告诉我吧,免得我把代码给别人看的时候丢人。
http://noie.name 网站改版中。
头像
oneleaf
论坛管理员
帖子: 10231
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04
送出感谢: 7 次
接收感谢: 103 次

Re: python 下的 dir 很神奇,为什么没有人用呢?是不是有什么副作用?

#2

帖子 oneleaf » 2013-04-12 18:31

没有检查 callable

代码: 全选

if hasattr(self.p0.renderer,'setPointSize') and callable(self.p0.renderer.setPointSize):
    self.p0.renderer.setPointSize(self.lds[23]['value'])
头像
枫叶饭团
论坛版主
帖子: 14685
注册时间: 2010-06-16 1:05
系统: Mac OS X
来自: Tencent
送出感谢: 1 次
接收感谢: 132 次
联系:

Re: python 下的 dir 很神奇,为什么没有人用呢?是不是有什么副作用?

#3

帖子 枫叶饭团 » 2013-04-12 18:46

不是有个isinstance什么来着的么
回复

回到 “Python/Php/Perl”