python编程进阶学习笔记(python编程基础与案例集锦)

网友投稿 295 2022-08-22


python编程进阶学习笔记(python编程基础与案例集锦)

@[TOC]

1. python 一切皆对象

python中的一切皆对象更加彻底 在python中的一切皆对象比Java中的一切皆对象更加彻底,Java中有class,也就是类的概念,object是class的一个实例。 函数和类也是对象

1.1 type 、object 和 class 的关系

list、str、dict、tuple、type都继承自object,所以object是最底层的(所有类)基类 type是自身的一个实例(通过指针实现),而object、list、str、dict、tuple都是type的对象,所以type创建所有对象

type -> int -> 1 即 type 类生成 int,int 类生成了1 a = 1 print(type(a)) # print(type(int)) # type -> str -> ’abc’所以 type 可以生成 class(类), class 生成 object(对象) s = 'abc' print(type(s)) # print(type(str)) # type->Student->stu class Student: pass

stu = Student()print(type(stu)) # print(type(Student)) #

4. type -> Student -> stu ```python class Student: pass #Student继承了最顶层的object同时Student又是type的对象 Student.__bases__ # print(type(Student)) # #type是自身的对象,object是type的对象 print(type(type)) # print(type(object)) # #type继承了object类,最顶层的object的基类为空 print(type.__bases__) # print(object.__bases__) # ()

1.2 python中对象的三个特征

身份 / 地址 ( id )

a = 1 print(id(a)) # a 的地址 1493816368 b = [] print(id(b)) # b 的地址 134273344

类型

常见类型 内容
None(全局只有一个) None
数值 int、float、complex、bool (True / False)
迭代类型
序列 list、bytes、bytearry、memoryview、range、tuple、str、array
映射类型 dict
集合 set、frozenset
上下文管理类型 with
其他 模块类型、class实例、函数类型、方法类型、代码类型、object对象、type类型、ellipsis类型、notimplented类对象

数值 (变量名 -> 值)

2. 魔法函数

2.1 什么是魔法函数?

所谓魔法函数(Magic Methods),是Python的一种高级语法,允许你在类中自定义函数(函数名格式一般为__xx__),并绑定到类的特殊方法中。比如在类A中自定义__str__()函数,则在调用str(A())时,会自动调用__str__()函数,并返回相应的结果。

注意 双下划线开头,如:init、getitem不要尝试自己定义魔法函数用于增强类的特性独立存在,定义后不需要显示调用

2.2 python中的魔法函数一览

未完待续 ~


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解springboot springsecuroty中的注销和权限控制问题
下一篇:用Python下载B站视频?1行命令搞定,悄悄用(python b站视频下载)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~