1.isinstance()内置函数

python中的isinstance()函数是python的内置函数,用来判断一个函数是否是一个已知类型。类似type。

2.用法:

isinstance(object,classinfo)

object:实例化对象

classinfo:可以是直接或者间接类名、基本类型或者由它们组成的元组。

返回值:如果对象的类型与参数classinfo的类型相同,则返回True,否则返回False

Python错误SyntaxError: unexpected EOF while parsing。【parsing,对句子结构的分析、解析】

含义是:解释器没找到它要找到的东西

1 语法有问题,一般都是少了print最后的一个括号。

2 输入语法肯定有问题,有时候忘了切换中英文输入法,可以删除了重新输入

3.isinstance示例语法:

  1. #isinstance
  2. a=[44,2,45]
  3. b='alex'
  4. c={'a':12}
  5. print(isinstance(a,str))
  6. print(isinstance(b,str))
  7. print(isinstance(c,(str,dict,list,tuple)))#查看c是否是元组(str,dict,list,tuple)的一个
  8.  
  9. 结果:
  10. False
  11. True
  12. True

4.isinstance()与type()的区别

isinstance()会认为子类是一种父类类型,考虑继承关系。

type()不会认为子类是一种父类类型,不考虑继承关系。

4.1   type只接受一个参数,不仅可以判断变量是否属于某个类型,还可以直接返回参数类型。

而isinstance只能判断是否属于某个已知的类型,不能直接得到变量所属的类型。

4.2   isinstance可以判断子类实例对象是属于父类的;而type会判断子类实例对象和父类类型不一样。

  1. class A(object):
  2. pass
  3. class B(A):
  4. pass
  5.  
  6. print(type (B())) #只显示B()这个子类
  7. print(type (A()))
  8. print(type (B()))
  9.  
  10. print(type(B())==A)
  1. 结果:
    <class '__main__.B'>
    <class '__main__.A'>
    True
    False

  

isinstance与type的区别的更多相关文章

  1. python isinstance()与type()的区别

    例如在继承上的区别: isinstance() 会认为子类是一种父类类型,考虑继承关系. type() 不会认为子类是一种父类类型,不考虑继承关系. class A: pass class B(A): ...

  2. isinstance 和 type 的区别

    class A: pass class B(A): pass isinstance(A(), A) # returns True type(A()) == A # returns True isins ...

  3. 【学习总结】Python-3- 类型判断之 isinstance 和 type 的区别

    菜鸟教程-Python3-基本数据类型 关于类型查询: type() 函数:可以用来查询变量所指的对象类型 用 isinstance()函数:判断是否是某个类型 两者的区别: type()不会认为子类 ...

  4. isinstance/issubclass/type的区别?

    type() 判断某个对象是否是该类创建的,只看一层,如果是继承类,也不会考虑继承类的类型.. Issubclass() 判断该类是否是另一个类的派生类,也就是子类,参数为类. isinstance( ...

  5. python 内建函数isinstance的用法以及与type的区别

    isinstance是Python中的一个内建函数 语法: isinstance(object, classinfo)   如果参数object是classinfo的实例,或者object是class ...

  6. 聊一聊isinstance与type

    聊一聊isinstance与type 最近写代码的时候遇到了一个关于isinstance与type的坑,这里给大家分享下,如果大家也遇到了同样的问题,希望本文能为大家解决疑惑把. isinstance ...

  7. 方法和函数,isinstance/issubclass/type以及反射

    一丶,isinstance/issubclass/type 1.issubclass检查第一个参数是否是第二个参数的 子子孙孙类 class Foo(): pass class Boo(Foo): p ...

  8. day25——私有成员、类方法、静态方法、属性、isinstance和issubclass的区别

    day25 类的私有成员 当你遇到重要的数据,功能(只允许本类使用的一些方法,数据)设置成私有成员 python所有的私有成员都是纸老虎,形同虚设 类从加载时,只要遇到类中的私有成员,都会在私有成员前 ...

  9. python之反射机制与callattr()、issubclass()、isinstance、type()相关

    一.反射机制 * 反射可以理解为 通过字符串的形式,动态导入模块: 利用字符串的形式,在对象(模块)中操作(查找/获取/删除/添加)成员,是一种基于字符串的事件驱动! 反射机制的内置函数 # hasa ...

随机推荐

  1. 菜鸟学SSH(十九)——提高用户体验之404处理

    只要做过WEB开发人对于“404”已经再熟悉不过了吧.当我们访问的资源不存在时,它就会跑出来跟你打招呼啦.但是默认情况下,404页面比较简陋,不是很友好.而且一般用户不知道404是个神马东东,还以为是 ...

  2. C#读取CSV

    public class CSVFileHelper { /// <summary> /// 将DataTable中数据写入到CSV文件中 /// </summary> /// ...

  3. 编译错误 ld: cannot find -lz

    [时间:2017-04] [状态:Open] [关键词:makefile,gcc,linux,ld,libz.so] 在新安装的centos上编译程序遇到上述问题,找了半天,原来是没有安装 需要安装z ...

  4. PHP可变参数

    0x00 缘起 在laravel的源码里经常可以看到下面的函数形式 $func(...$args) 0x01 可变参数旧写法 这表示$func支持可变参数,在php5.6之前则是在函数体内调用 fun ...

  5. Oracle数据导入指定表空间

    1. 打开工具Oracle SQL Plus 以dba身份登录sys用户 sqlplus /nologconn sys@url as sysdba 2. 创建用户并指定表空间 使用客户端工具或者Web ...

  6. Centos7.x 执行top命令教程

    一.作用 top命令用来显示执行中的进程,使用权限是所有用户 二.格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 三.命令参数解释 d:指定更新的间隔,以秒计 ...

  7. MYSQL + MHA +keepalive + VIP安装配置(二)--MHA的配置

    一.总概 1.MHA介绍 MHA(Master High Availability)是自动的master故障转移和Slave提升的软件包.它是基于标准的MySQL复制(异步/半同步).      MH ...

  8. CentOS服务器ntpdate同步

    如有多台CentOS服务器运行相同的服务,且对时间准确性要求较高,那必须保证多台服务器时间统一. 最简单的就是每台服务器都用ntpdate同步同一台网络时间服务器的时间. 1.输入ntpdate ti ...

  9. 在MyEclipse中将Java Project转换成Web Project

    在MyEclipse中将Java Project转换成Web Project 此添加方法是针对MyEclipse中添加的: 编辑工程的.project文件: 添加 <nature>com. ...

  10. python中,numeric(数字类型)和integer(整型)的区别

    说明: 在今天做int实现的过程中,官方函数的解释是将numeric转换为integer,就突然不明白,两个有啥区别. numeric-数字类型包括: int,float,bool,complex i ...