首页 > 编程语言 >python中isinstance()用法

python中isinstance()用法

时间:2023-04-05 13:37:25浏览次数:35  
标签:示例 python 用法 bruce str print isinstance True

isinstance()用来判断一个对象是否是一个已知的类型,isinstance()函数的语法如下:

isinstance(object,classtype)
  • object -- 实例对象。
  • classtype -- 可以是直接或间接类名、基本类型或者由它们组成的元组。

isinstance()函数的返回值是布尔型,若object的类型是classtype,那么就返回True,否则返回False。

示例代码1:

a = 'hello'
print(isinstance(a,str))

打印结果:

True

示例代码2:

b =[ 'hello bruce']
if isintance(b,str):
    print('我是bruce')
elif isinstance(b,list):
    print('我不是bruce')
else:
    print('我啥都不是!')

打印结果:

我不是bruce

示例代码3:

以元组形式:

a = 'str'
b = {'name':'bruce'}

ret1 = isinstance(a,(str,list,int))
print(ret1)

ret2 = isinstance(b,(str,list,int))
print(ret2)

打印结果:

True

False

示例代码4:

class A(object):
    pass

class B(A):
    pass


a = A()
ret1 = isinstance(a,A)
print(ret1)  #  True
print(type(a) == A)  # True


b = B()
ret2 = isinstance(b,A)
print(ret2) #  True
print(type(b) == A) #  False

综上,注意:

isinstance() 与 type() 区别:

type() 不会认为子类是一种父类类型,不考虑继承关系。
isinstance() 会认为子类是一种父类类型,考虑继承关系。
如果要判断两个类型是否相同推荐使用 isinstance()。

  

 

标签:示例,python,用法,bruce,str,print,isinstance,True
From: https://www.cnblogs.com/shaoyishi/p/17289239.html

相关文章

  • Win10(CPU)+ Anaconda3 + python3.9安装pytorch
    Win10(CPU)+Anaconda3+python3.9安装pytorch1.安装Anaconda31.1下载Anaconda3可以在官网下载Anaconda3-2022.05-Windows-x86_64.exe,这个版本对应的是python3.9。1.2安装Anaconda3此步骤比较简单,双击.exe文件,一步一步执行即可,有不确定的可以自行百度,教程比较多,但基本一致......
  • 关于python中使用json.load()从json文件中读取数据转换成字典
    在json模块中,我们可以经常会用到load()与loads(),其中两者的区别如下json.load()从json文件中读取数据转抱为dict类型json.loads()将str类型的数据转换为dict类型这里笔者主要说明json.load()的用法,举例说明,如下有一json文件,ip-ranges.json,内容如下:这里我们将使用json.load(......
  • Javascript模块化编程(三):require.js的用法
    这个系列的第一部分和第二部分,介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战。我采用的是一个非常流行的库require.js。一、为什么要用require.js?最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分......
  • Jenkins部署python-flask后端项目,持续集成(jinkins配置python虚拟环境)
    第一步:新建项目Jenkins->新建任务->起名字,构建一个自由风格的软件项目->保存第二步,添加git仓库第三步,构建,添加shell(Windows系统选择ExecuteWindowsbatchcommand)以windows为例感谢大佬的分享:https://www.cnblogs.com/andy0816/p/16617675.html......
  • Python爬虫 execjs执行js报错json.decoder.JSONDecodeError: Expecting value: line 1
    fun=re.search(r'(__=\([\S\s]*?;)<',r_text).group(1)fun=fun+'functionget(){returnJSON.stringify(__.data)}'ctx=execjs.compile(fun)rdata=(ctx.eval('get()'))报错json.decoder.JSONDecodeError:Expectingvalue:line1col......
  • 续:python 新环境的创建并在 spyder 中转换 - 如何解决转换环境时报错:invalid file pat
    原文地址blog.csdn.net目录重点问题描述解决方法各种尝试最终灵感重点不想看全文的直接看这里,不要安装一个和已有python环境一样版本的python(这里的一样指的是完全一样,比如都是python2.7.15),如果已有python2.7.15,可以创建python2.7.18的环境并在spyder中转换。如......
  • python 新环境的创建并在 spyder 中转换——在 spyder 中配置 arcgis 的 python 解释
    原文地址blog.csdn.net目录问题描述创建python新环境查看所有环境创建新的python2.7虚拟环境激活环境删除环境在spyder中配置环境,切换python解释器回归正题,将指定路径下的python解释器配置到spyder中重点——解决方法问题描述这几天上课需要下载和学习a......
  • Python装饰器与GIL锁解释
    Python进阶篇-系列文章全篇......
  • python机器学习案例系列教程——K最近邻算法(KNN)、kd树
    全栈工程师开发手册(作者:栾鹏)python数据挖掘系列教程K最近邻简介K最近邻属于一种估值或分类算法,他的解释很容易。我们假设一个人的优秀成为设定为1、2、3、4、5、6、7、8、9、10数值表示,其中10表示最优秀,1表示最不优秀。我们都知道近朱者赤,近墨者黑,我们想看一个人是什么样的,看......
  • python机器学习案例系列教程——文档分类器,朴素贝叶斯分类器,费舍尔分类器
    全栈工程师开发手册(作者:栾鹏)python数据挖掘系列教程github地址:https://github.com/626626cdllp/data-mining/tree/master/Bayes贝叶斯分类过程概述:首先有一批已知分类的数据集。对每个输入对象提取特征,根据输入对象的特征属性和输入对象的所属分类,计算分类与特征属性之间的概率......