Python type函数和isinstance函数区别 - Python零基础入门教程

2021/6/8 1:33:56

本文主要是介绍Python type函数和isinstance函数区别 - Python零基础入门教程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

  • 一.Python type 函数简介
  • 二.Python isinstance 函数简介
  • 三.Python type 函数和 isinstance 函数区别
  • 四.猜你喜欢

零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门

Python 变量,也称 Python 数据类型。Python 变量一共六种类型:整数/浮点数/字符串/BOOL/列表/元组/字典;

一.Python type 函数简介

**Python 内置函数 type,该函数主要用于解析判断 Python 变量类型;**type 函数语法如下:

'''
函数描述:type 函数用于获取变量类型;
参数:
    object : 实例对象;
返回值:直接或者间接类名、基本类型;
'''
type(object)

二.Python isinstance 函数简介

isinstance 函数是 **Python **中的一个内置函数,主要用于检测变量类型,返回值是 bool 值 ,isinstance 函数语法如下:

'''
函数描述:主要用于检测变量类型,返回值是 bool 值 
参数:
    object : 实例对象。
    classinfo : 可以是直接或者间接类名、基本类型或者由它们组成的元组。
返回值:如果对象的类型与classinfo类型相同则返回 True,否则返回 False。
'''

isinstance(object,classinfo)

三.Python type 函数和 isinstance 函数区别

  • ** isinstance 函数会认为子类是一种父类类型,考虑继承关系。**
  • ** type 函数不会认为子类是一种父类类型,不考虑继承关系。**
# !usr/bin/env python

  # -_- coding:utf-8 \__-

  """
  @Author:猿说编程
  @Blog(个人博客地址): www.codersrc.com
  @File:python type 函数和 isinstance 函数区别.py
  @Time:2021/3/21 11:37
  @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!

  """

  class Animation:
      pass

  class Dog(Animation):
      pass

  print(isinstance(Animation(), Animation))    # returns True
  print(type(Animation()) == Animation)      # returns True
  print(isinstance(Dog(), Animation))        # returns True
  print(type(Dog()) == Animation)         # returns False

  '''
  输出结果:

  True
  True
  True
  False

  '''

代码分析

创建一个 Animation 对象,再创建一个继承 Animation 对象的 Dog 对象,使用 isinstance 和 type 来比较 Animation 和 Animation 时,由于它们的类型都是一样的,所以都返回了 True。

而 Dog 对象继承于 Animation 对象,在使用 isinstance 函数来比较 Dog 和 Animation 时,由于考虑了继承关系,所以返回了 True,使用 type 函数来比较 Dog 和 Animation 时,不会考虑 Dog 继承自哪里,所以返回了 False

** 总结:如果要判断两个类型是否相同,则推荐使用 isinstance 函数**;

四.猜你喜欢

  1. Python 简介
  2. Python Pycharm Anacanda 区别
  3. Python2.x 和 Python3.x,如何选择?
  4. Python 配置环境
  5. Python Hello World 入门
  6. Python 代码注释
  7. Python 中文编码
  8. Anaconda 是什么?Anconda 下载安装教程
  9. Pycharm 提示:this license **** has been cancelled
  10. Pycharm 设置开发模板/字体大小/背景颜色

未经允许不得转载:猿说编程 » Python type 函数和 isinstance 函数区别



这篇关于Python type函数和isinstance函数区别 - Python零基础入门教程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程