python变量--命名规范和原理要素

命名规范

python的命名规范和前端的命名规范有些相似,以驼峰体和下划线体为主

驼峰体命名2种:

1.多个单词的首写字母是大写,例:UserNameOfDb

2.第一个单词的首写小写,其余单词的首字母大写,例:userNameOfDb

下划线体:

单词与单词之间用下划线隔开,例:user_name_of_db

备注:

#命名规范
    *变量名的命名要做到见名知意
    1.变量名只能由数字,字母,下划线的任意组合
    2.变量名不能以数字开头,下划线建议不要开头因为有特殊含义
    3.变量名不能与关键字冲突,例:class,print,div等

什么是变量

顾名思义:即变化的量。

变量的原理

遇到赋值符号先看右边在看左边,简单举个🌰

分析:内存空间中存储lucy, 将存储lucy的内存空间地址绑定给变量名username,之后若访问Lucy通过请求变量名username即可访问。

扩展

username = 'lucy'

name = 'jack'

username = name

print(username)#输出username = jack

 

原因:Lucy已被变量名为username绑定了,jack已被变量名为name绑定了,此时username = name,“=”意为赋值,所以此时username输出为jack。

变量三要素 

1. 变量的值

2.变量的内存地址

3.变量的数据类型

 (ps:若文件中出现波浪线为代码不规范,可快捷键快速排版:comand/ctrl+ait+L)

python底层优化

1.一个变量名只能指向一个内存地址

2.一个内存地址可以有多个变量名指向

垃圾回收机制

1.引用计数

        Python垃圾回收主要以引用计数为主,分代回收为辅。引用计数法的原理是每个对象维护一个ob_ref,用来记录当前对象被引用的次数,也就是来追踪到底有多少引用指向了这个对象,当发生以下四种情况的时候,该对象的引用计数器+1,为0时清除

2.标记清除

        基于追踪回收(tracing GC)技术实现的垃圾回收算法。第一阶段是标记阶段,GC会把所有的『活动对象』打上标记,第二阶段是把那些没有标记的对象『非活动对象』进行回收。

(图解,标记工作原理) 1,2,3活动对象可追踪标记,保留,4,5非活动对象不可直接追踪标记,进行回收

3.分代回收

分配内存
-> 发现超过阈值了
-> 触发垃圾回收
-> 将所有可收集对象链表放到一起
-> 遍历, 计算有效引用计数
-> 分成 有效引用计数=0 和 有效引用计数 > 0 两个集合
-> 大于0的, 放入到更老一代
-> =0的, 执行回收
-> 回收遍历容器内的各个元素, 减掉对应元素引用计数(破掉循环引用)
-> 执行-1的逻辑, 若发现对象引用计数=0, 触发内存回收
-> python底层内存管理机制回收内存

简单来说:是个逐层筛选的过程

 数据监控随着层级下降逐渐频繁。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值