Is&isinstance&issbuclass 的使用 | 学习笔记

简介: 快速学习 Is&isinstance&issbuclass 的使用

开发者学堂课程【Python 入门 2020年版:Is&isinstance&issbuclass 的使用 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/639/detail/10391


Is&isinstance&issbuclass 的使用

面相对象相关方法

1.is 身份运算符,运算符是用来比较是否是同一个对象

2.type(p1)  其实获取的就是类对象

3.isinstance 用来判断一个对象是否由指定的类(或者父类)实例化出来的

4.isssubclass 用来判断一个类是否是另一个类的子类

class person(object):

def__init__(self,name,age):

self.name=name

self.age=age

class Student(person)

pass

p1=Person('张三',18)

p2=Person('张三',18)

s=Student('jake',20)

#获取两个对象的内存地址  id(p1)==id(p2)

print(p1 is p2) 1. # is身份运算符,运算符是用来比较是否是同一个对象

print(type(p1) 的运行结果

如图:

image.png

5.#type(p1)   #其实获取的就是类对象

a=1

if type(a)==int:

print('a是一个整数类型')

运行结果是正常的。

想判断 p1 是不是 Person 类可以这样写:

if type(p1)==Person:

print('p1是Person类创建的实例对象')

运行结果如图:

image.png

#s 这个实例对象是否由 student 类创建的?

print(type(s)==Student)

运行结果是没问题的。

如果:

print(type(s)==Person)

运行结果就会显示 False

它的类型是一个学生,也是一个人,有一种运算符可以同时包括。

3.# isinstance 用来判断一个对象是否由指定的类(或者父类)实例化出来的

实例化就是一个创建的过程

print(isinstance(s,Student)) 运行结果  #Ture

print(isinstance(s,Person)) 运行结果  #Ture

print(isinstance(p1,Person)) 运行结果 #True

print(isinstance(p1,Student))运行结果  #False

isinstance是内置函数

4.isssubclass 用来判断一个类是否是另一个类的子类

print(isssubclass(Student,Person,X)))  运行结果 # True

print(isinstance(Person,Student)) 运行结果  # False

相关文章
|
开发者 Python
__init__&__del__&__str__&__repr__&__call__魔法介绍 | 学习笔记
快速学习__init__&__del__&__str__&__repr__&__call__魔法介绍
43 0
__init__&__del__&__str__&__repr__&__call__魔法介绍 | 学习笔记
|
消息中间件 Java 开发者
@RabbitListener&@EnableRabbit |学习笔记
快速学习 @RabbitListener&@EnableRabbit
93 0
|
算法 开发者 Python
Filter&map&reduce 方法 | 学习笔记
快速学习 Filter&map&reduce 方法
80 0
Filter&map&reduce 方法 | 学习笔记
python 类型转换 object to datetime64[ns],timedelta64[ns] to float
python 类型转换 object to datetime64[ns],timedelta64[ns] to float
python 类型转换 object to datetime64[ns],timedelta64[ns] to float
|
TensorFlow 算法框架/工具
TF之data_format:data_format中的NHWC&NCHW简介、转换的详细攻略
TF之data_format:data_format中的NHWC&NCHW简介、转换的详细攻略
TF之data_format:data_format中的NHWC&NCHW简介、转换的详细攻略
★教师工资为什么这么低?
教师工资为什么这么低? 一点号教师帮2016.9.21 wemedia true 关于教师工资为什么低的原因,有很多人都在问,也有很多不同的答案,小磊哥下面就把这些不同的解释整理在一起,供老师们看一下,但这不代表小磊哥与教师帮的观点哈! ” 一:行业本质   在形式上,教育是由国家支持的产业,公办教育机构属于国家事业单位编制,校长有行政级别。
1457 0
|
算法
§--------算法分界线--------§
如题 As said in the title~ 计算机的cpu计算从根源上由最基本的逻辑电路(晶体管)组成,由此衍生出最基本的数值运算:四则运算。而此后所有的高级算法都是建立在这个基本计算原理(逻辑运算)上。
976 0
|
Java 测试技术
java中&和&&的区别 位运算
1.1. 逻辑与的运算符功能 1.1.1. 测试&& public static void main(String[] args) { int x=5; if (x==6 && saySpringok()) { } } private static boolean saySpringok() { System.out.println("saySpringok"); return false; } 没有输出:因为用的&& 第一个不满足条件则不在判断后面的条件。
1872 0