Python说文解字_杂谈02
1. Py中三个中啊哟的概念type、object和class的关系。
type生成了int生成了1
type->class->obj
type用来生成类对象的
object是最顶层的基类
type也是一个类,同时type也是一个对象
结论:类是由type这个类生成的对象。obejct是所有类都继承的基类。继承都是object,实例是由type生成。
把握几个知识点就能深刻理解这个观点。
知识点1:type()并可以显示类型,所谓类型可以反映是由谁实例化生成的。实例化是动作,生成的结果就是对象。这是第一条线。
比如:
>>> a =
>>> type()
<class 'int'>
>>> type(int)
<class 'type'>
int实例化了a,a是结果是一个对象,type实例化了int,int是结果是一个对象。
知识点2:不但实例化的过程,type最终形成环路,type实例化了自己,type的结果是一个对象,就是type自己。
知识点3:__bases__可以显示继承关系,就是所谓一层一层的继承关系。不管继承了多少层,最终都会继承object这个基类,包括type这个生成器的继承。这是第二条线。
知识点4:type和ojbect,是一个特殊关系,互为指向的关系。
总结:重点要理解继承和实例化,是两个不同概念,是两种概念两条线,其中又互为依赖。实例化是母体和子体的是生成关系。继承是属性和方法的遗传关系。
生成关系 vs 遗传关系。是一切接对象的核心。
举个例子:儿子是由母亲生的,这是一个关系。继承母亲的特性和行为这是一个关系。记住这个就理解了。
a =
b = "abc"
print(type())
print(type(int))
print(type(b))
print(type(str)) class Student:
pass class MyStudent(Student):
pass stu = Student()
print(type(stu))
print(type(Student))
print(int.__bases__)
print(str.__bases__)
print(Student.__bases__)
print(MyStudent.__bases__)
print(type.__bases__)
print(object.__bases__)
print(type(object))
2. Py中场景的内置类型(内置类型不是数据类型,是更广义的概念)。
对象的三个特性:
身份、用id查看,就是指的内存地址。
类型、用type查看
值、
类型有哪些:
None(全局只有一个)
数值:
int
float
complex
bool
迭代类型:
序列类型:
list
byte、bytearray、memoryview(二进制序列)
range
tuple
str
array
映射(dict):
集合:
set
frozenset(冻集合)
上下文管理类型:
with语句
其他:
模块类型
class和实例
函数类型
方法类型
代码类型
ojbect对象
type类型
elipsis类型:省略号类型
notimplemented类型。
Python说文解字_杂谈02的更多相关文章
- Python说文解字_杂谈05
1. isinstance和type: is和==符号,is指的是内存地址,是不是一个对象,ID知否相同 集成链 class A: pass class B(A): pass b = B() prin ...
- Python说文解字_杂谈09
1. 元类编程代码分析: import numbers class Field: pass class IntField(Field): # 数据描述符: # 初始化 def __init__(sel ...
- Python说文解字_杂谈08
1. Python变量到底是什么? Python和Java中的变量本质不一样,python的变量实质是一个指针 int str,便利贴 a = 1 # 1. a贴在1上面 # 2. 它的过程是先生成对 ...
- Python说文解字_杂谈07
1. 深入dict from collections.abc import Mapping,MutableMapping # dict 属于mapping类型 a = {} print(isinsta ...
- Python说文解字_杂谈01
1. Python在Ubuntu下面下载Python 2. 安装依赖包 sudo apt-get update sudo apt-get install build-essential python- ...
- Python说文解字_杂谈06
1. 序列类型的分类: 容器类型:list.tuple,deque 扁平序列:str.bytes.bytearray.array.array 可变序列:list.dequte.bytearray.ar ...
- Python说文解字_杂谈04
1. 鸭子类型: 当你看到一只鸟走来像鸭子,游泳起来像鸭子,叫起来也像鸭子,他么他就可以叫做鸭子.任何可迭代的对象.一样的方法,可以用可迭代的话,就可以迭代的组合打印.__getitem__可以塞到任 ...
- Python说文解字_杂谈03
1. 我们从前面的知识得到,所有的类都要继承自object这个基类(超类),另外我们知道“继承”可以继承类的属性和方法.我们起始通过type创建类的时候,自然而然的也会从ojbect继承他的一些属性和 ...
- Python说文解字_详解元类
1.深入理解一切接对象: 1.1 什么是类和对象? 首先明白元类之前要明白什么叫做类.类是面向对象object oriented programming的重要概念.在面向对象中类和对象是最基本的两个概 ...
随机推荐
- POJ 3393:Lucky and Good Months by Gregorian Calendar 年+星期 模拟
Lucky and Good Months by Gregorian Calendar Time Limit: 1000MS Memory Limit: 65536K Total Submissi ...
- 一百一十一、SAP的OO-ALV之五,显示ALV表格
一.在屏幕里面有2部分,(PROCESS BEFORE OUTPUT 用于显示, PROCESS AFTER INPUT用于数据处理).我们创建的display_alv函数, 二.display_al ...
- 019-PHP创建目录函数
<?php if (mkdir("myDir1", 0777)) //创建目录的函数 { print("目录创建成功"); //目录建立成功 } else ...
- js(JavaScript)使用${pageContext.request.contextPath}报错
前几天写程序在js文件中用到了${pageContext.request.contextPath}然后一直报错,没有办法post到服务器,原来js把这个当成字符串了,一直以为他是jquery的函数! ...
- P2057 [SHOI2007]善意的投票 / [JLOI2010]冠军调查
P2057 [SHOI2007]善意的投票 / [JLOI2010]冠军调查 拿来练网络流的qwq 思路:如果i不同意,连边(i,t,1),否则连边(s,i,1).好朋友x,y间连边(x,y,1)(y ...
- 每天一点点之laravel框架 - Laravel5.6 + Passport实现Api接口认证
1.首先通过 Composer 包管理器安装 Passport: composer require laravel/passport 注:如果安装过程中提示需要更高版本的 Laravel:larave ...
- 使用模拟器调试react-native步骤(安卓机)
1.在cmd界面搭建react-native 环境: 可参考https://reactnative.cn/docs/0.51/getting-started.html#content (1)npm i ...
- [Python3] RSA的加解密和签名/验签实现 -- 使用pycrytodome
Crypto 包介绍: pycrypto,pycrytodome 和 crypto 是一个东西,crypto 在 python 上面的名字是 pycrypto 它是一个第三方库,但是已经停止更新,所以 ...
- Codeforces 444C 线段树 懒惰标记
前天晚上的CF比赛div2的E题,很明显一个线段树,当时还在犹豫复杂度的问题,因为他是区间修改和区间查询,肯定是要用到懒惰标记. 然后昨天真的是给这道题跪了,写了好久好久,...我本来是写了个add标 ...
- DevOps专题|基础Agent部署系统
随着京东云业务规模.管理机器规模的扩大,各类agent也在逐渐增多,如日志agent.监控agent.控制系统agent等.这对agent的部署.升级.状态维护提出了很高的要求,一旦某个全局agent ...