您的位置: 网站首页> python基础> 当前文章

dir函数如何判断是属性还是方法

老董2020-03-22199围观,149赞

  dir函数用着很方便,但是打印出来的结果从视觉上无法区分属性还是方法。dir函数如何判断是属性还是方法呢?大家可以借助type函数和eval函数来判断。以time模块为例,代码如下:

# -*- coding: utf-8 -*-
import time


for i in dir(time):
    if not str(i).startswith('_'):
        try:
            print(i, type(eval(('time.' + str(i)))))
        except Exception as e:
            print('error', i)
        finally:
            pass

altzone <class 'int'>
asctime <class 'builtin_function_or_method'>
clock <class 'builtin_function_or_method'>
ctime <class 'builtin_function_or_method'>
daylight <class 'int'>
get_clock_info <class 'builtin_function_or_method'>
gmtime <class 'builtin_function_or_method'>
localtime <class 'builtin_function_or_method'>
mktime <class 'builtin_function_or_method'>
monotonic <class 'builtin_function_or_method'>
perf_counter <class 'builtin_function_or_method'>
process_time <class 'builtin_function_or_method'>
sleep <class 'builtin_function_or_method'>
strftime <class 'builtin_function_or_method'>
strptime <class 'builtin_function_or_method'>
struct_time <class 'type'>
time <class 'builtin_function_or_method'>
timezone <class 'int'>
tzname <class 'tuple'>


  如果是方法则type求值后包含method。

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会

文章评论

    dir函数如何判断是属性还是方法文章写得不错,值得赞赏

站点信息

  • 网站程序:Laravel
  • 博主微信:a772483200