2020年暑假Python复习-第一课python基础知识
2021-04-07 19:26
标签:工作效率 com src 效率 技术 lse 链表 知识 就是 一. 标识符:用来识别变量和函数等元素的名称 (1)由字母、数字和下划线组成的任意长度的字符序列1 (2)开始字符必须是字母和下划线、但不能是数字 (3)不能是关键字 变量:指向(或引用)内存中存储的名字 赋值语句:variable = expression 同时赋值:var1, var2, …, varn = exp1, exp2, …, expn(顺序是一一对应) 数据类型: (1)数字类型:整型和实型 等价于false的:【】,(){},0,None,0.0 可以通过内置函数bool()来检测bool(0.0) (2)操作符 a.‘-‘作为一元运算符代表取相反数 b.‘‘/‘执行实数除法操作,得到的结果为实数 c."//‘‘执行整数除法操作,得到的结果为整数 d."%"执行取余数操作 二. 1.Python是动态类型语言(dynamically typed language),其特点是变量内存地址的分配和类型的检查是在运行(而非编译时)时进行的 2.可变数据对象和不可变数据对象 (1)列表可以通过引用其元素,改变对象数组,这类对象称为可变数据对象 (2)数字和字符串不能改变对象本身,只能改变引用的指向,这类对象称为不可变数据对象 3.动态类型和函数传递 参数x是一个引用,指向a所指向的对象 4.对象池机制 (1)小整数对象--小整型对象池 由于数值比较小的小整数会频繁出现,将[-5,257)之间的数,缓存在在小整型对象池中。 (2)大整数对象--通用整数对象池 Python运行环境提供了一块内存空间供大整数轮流使用,称为通用整数对象池,这也就是说大整数其实也是有缓存的。该对象池使用链表组织。 5.三种内存管理机制 (1)垃圾回收 当Python中某个对象的引用计数降为0时,说明没有任何引用指向该对象,该对象将作为垃圾被回收 (2)标记清楚 第一阶段是标记阶段,GC(垃圾回收)会把所有的活动对象打上标记 (3)分代回收 原理:存活时间越久的对象,越不可能在后面的程序中变成垃圾 a.Python将所有对象分为0、1和2代,新建对象为第0代 6.内存池机制 a.Python中引入内存池机制,用于对小块内存的分配和释放,即Pymalloc机制 2020年暑假Python复习-第一课python基础知识 标签:工作效率 com src 效率 技术 lse 链表 知识 就是 原文地址:https://www.cnblogs.com/zhaoyiyao/p/13387023.html
expression是由数值、变量和操作符组成的、可以求得数值的有意义的组合,例如
y = 1 radius = 1.0 x = 6 * (6 / 2) + 4 x = x + y
同时赋值还可以用来从一条语句中获取多个输入的值,例(这个就类似于C语言的语法输入多个值)
动态类型语言的核心是对象和引用分离。例如
a = 5 a = “hello”
a.5是内存中的一个对象,a是指向这个对象的一个引用
b.当引用a指向另外一个字符串对象时,对象5就没有引用指向它,此时Python会将这个没有引用指向的对象销毁,释放相应的内存
如果参数是不可变的数据对象,则x和a相互独立,对参数x的操作不会影响引用a
如果参数是可变的数据对象,改变参数有可能改变原对象,因此所有指向该对象的引用都会受影响
ps:对于字符串的缓存仅仅缓存一个单词的字符串
频繁的垃圾回收将大大降低Python的工作效率,所以Python只会在特定条件下,自动启动垃圾回收
垃圾回收启动的条件是Python中分配对象(object allocation)和取消分配对象(object deallocation)的次数的差值高于某个阈值(如下所示,此处为700)
第二阶段是把那些没有标记的非活动对象进行回收
回收策略:
某代对象经历过垃圾回收依然存活,即被归入下一代
垃圾回收时启动对0代对象扫描,0代经过一定次数垃圾回收则会启动对1代对象的垃圾回收;1代经过一定次数垃圾回收则会启动对2代对象的垃圾回收
b.用户也可以通过gc.collect()来手动启动垃圾回收机制
(1)当申请的内存小于256字节时,PyObject_Malloc会在内存池中申请内存
当申请的内存大于256字节时,PyObject_Malloc的行为将转化为malloc的行为
(2)Python对象都有其独立的私有内存池,对象间不共享内存池
(3)不用的内存放到内存池而不是返回给操作系统
上一篇:用伪代码表示第4题中各题的算法
下一篇:用N-S图表示第4题中各题的算法
文章标题:2020年暑假Python复习-第一课python基础知识
文章链接:http://soscw.com/index.php/essay/72524.html