Python实现自省的方法有哪些?

公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!

小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。

废话不多说,开始今天的题目:

问:Python实现自省的方法有哪些?

答:自省是一种自我检查行为。在计算机编程中,自省是指这种能力:检查某些事物以确定它是什么、它知道什么以及它能做什么。自省向程序员提供了极大的灵活性和控制力。

说的更简单直白一点:自省就是面向对象的语言所写的程序在运行时,能够知道对象的类型。一句可以概况为:运行时能够获知对象的类型。

Python实现自省有很多方法,常用的有

  • type(),判断对象类型

  • dir(), 带参数时获得该对象的所有属性和方法;不带参数时,返回当前范围内的变量、方法和定义的类型列表

  • help() ,  用于查看函数或模块用途的详细说明

  • isinstance(),判断对象是否是已知类型

  • issubclass(),判断一个类是不是另一个类的子类

  • hasattr(),判断对象是否包含对应属性

  • getattr(),获取对象属性

  • setattr(), 设置对象属性

  • id(): 用于获取对象的内存地址

  • callable():判断对象是否可以被调用。

下面这张图可以收藏起来了!

具体的用法,大家可以参考下面这个链接:

https://blog.csdn.net/zjbyough/article/details/96037399

如果对于参考答案有不认同的,大家可以在评论区指出和补充,欢迎留言!

20、说说HTTP常见响应状态码?

21、Python 单、双引号、三引号区别?

22、说说Python中猴子补丁是什么?

23、说说Python中的垃圾回收机制?

24、Python中有几种交换两个变量的值?

25、说说Python中的6种位运算符?

26、说说Python中的类型转换有哪些?

27、Python中实现二分查找的2种方法?

28、说说Python中的lambda表达式?

29、说说Python中的反射是什么?

30、Python删除list重复元素有几种方法?

31、Python中__new__和__init__的区别?

32、说说Python中的help()和dir()函数?

33、说说Python中的GIL是什么?

34、说说提高Python运行效率的技巧?

35、说说对于Python装饰器的理解?

36、说说Python中的异常捕获?

37、Python的单例模式有几种实现方式?

38、Python中的魔法方法有哪些?

关注小猿公众号,每天学习一道题

(0)

相关推荐