lecture 1 isinstance()函数

简介: isinstance()与 type()区别: type()不会认为子类是一种父类类型,不考虑继承关系。 isinstance()会认为子类是一种父类类型,考虑继承关系。

isinstance()与 type()区别

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

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

 如果要判断两个类型是否相同推荐使用 isinstance()。


语法

 以下是 isinstance()方法的语法:

 isinstance(object, classinfo)

参数

 object --实例对象。

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

返回值

 如果对象的类型与参数二的类型(classinfo)相同则返回 True,否则返回 False。z

实例

以下展示了使用 isinstance 函数的实例:

>>>a = 2
>>> isinstance (a,int)
True
>>> isinstance (a,str)
False
>>> isinstance (a,(str,int,list))    # 是元组中的一个返回 True
True

type()和isinstance()函数的区别:

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


本文摘录自:http://www.runoob.com/python/python-func-isinstance.html




目录
相关文章
|
TensorFlow 算法框架/工具 Python
成功解决AttributeError: module 'numpy' has no attribute 'equal'
成功解决AttributeError: module 'numpy' has no attribute 'equal'
成功解决AttributeError: module 'numpy' has no attribute 'equal'
|
3月前
|
TensorFlow API 算法框架/工具
【Tensorflow】解决Inputs to eager execution function cannot be Keras symbolic tensors, but found [<tf.Te
文章讨论了在使用Tensorflow 2.3时遇到的一个错误:"Inputs to eager execution function cannot be Keras symbolic tensors...",这个问题通常与Tensorflow的eager execution(急切执行)模式有关,提供了三种解决这个问题的方法。
37 1
|
4月前
|
PyTorch 算法框架/工具 机器学习/深度学习
|
4月前
|
API Python
【Python】已解决:AttributeError: ‘TfidfVectorizer’ object has no attribute ‘get_feature_names_out’
【Python】已解决:AttributeError: ‘TfidfVectorizer’ object has no attribute ‘get_feature_names_out’
118 0
|
自然语言处理 搜索推荐 数据挖掘
RolePred: Open-Vocabulary Argument Role Prediction for Event Extraction 论文解读
事件抽取中的论元角色是指事件和参与事件的论元之间的关系。尽管事件抽取取得了巨大进展,但现有研究仍然依赖于领域专家预定义的角色。
70 0
|
机器学习/深度学习 索引 Python
【Python·问题解决】IndexError: too many indices for array: array is 2-dimensional, but 3 were indexed
【Python·问题解决】IndexError: too many indices for array: array is 2-dimensional, but 3 were indexed
【Python·问题解决】IndexError: too many indices for array: array is 2-dimensional, but 3 were indexed
|
PyTorch 算法框架/工具 开发者
RuntimeError: Can‘t call numpy() on Variable that requires grad. Use var.detach().numpy()
出现这个现象的原因是:待转换类型的PyTorch Tensor变量带有梯度,直接将其转换为numpy数据将破坏计算图,因此numpy拒绝进行数据转换,实际上这是对开发者的一种提醒。如果自己在转换数据时不需要保留梯度信息,可以在变量转换之前添加detach()调用。
178 0
|
Python
解决ValueError: `validation_split` is only supported for Tensors or NumPy arrays, found following
解决ValueError: `validation_split` is only supported for Tensors or NumPy arrays, found following
632 0
解决ValueError: `validation_split` is only supported for Tensors or NumPy arrays, found following
LeetCode 150. Evaluate Reverse Polish Notation
根据逆波兰表示法,求表达式的值。 有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。
45 0
LeetCode 150. Evaluate Reverse Polish Notation
|
索引
LeetCode 413. Arithmetic Slices
如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列。
101 0
LeetCode 413. Arithmetic Slices