day05-2 变量、常量、注释以及内存管理
什么是变量
变量:一种会变化的状态,这个状态可以描述世间万物
Python中定义变量
name = ‘nick’
print(name)
由变量名,赋值符号,变量值组成
变量名接收了变量值
定义变量名的命名规范
- 变量名得具有某种意义
- 变量名只能使用字母,数字,下划线组成,并且第一个字符不能是数字。
- 也不要以下划线开头,因为在python中下划线开头的内容具有特殊含义
- 大小写敏感
- 不能使用保留字和关键字,如下
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- 保留字:在语言中没有用到,但别的语言用的比较多所以可能将来会用到,所以先保留下来
两种定义变量名的方式
- 驼峰体:每个单词的第一个字母均大写
- 大驼峰:第一个单词的第一个字母大写
- 在Python中给类命名使用这种办法
MyFirstLove, IntOne
- 小驼峰:第一个单词的第一个字母小写
- 在Python中给类命名使用(不推荐)
myFirstLove, intOne
- posix写法,用下划线来连接单词,单词全部小写
my_first_love, int_none
`
什么是常量
固定不变的量
定义常量
大写每一个字母,但是Python没有严格意义上的常量,只是一种约定俗成。想改也可以改,只是要做好离职的准备
HEIGHT = 150
注释是什么
一段描述性的内容
单行注释:“#”
多行注释:每一行都用“#”,或者使用三个‘’,或者三个“”
注释有什么用
取消Python的语法,让#后面的字符变成普通的字符
内存管理(重要)
引用计数
- 用来描述变量值的
name = "nick" # 引用计数为1
name2 = name # 引用计数为2
del name # 引用计数为1
垃圾回收机制
- 当变量名的引用计数为0时,Python会自动回收该变量值的内存占用
print("nick")相当于下面的代码
name = 'nick'
print(name)
del name
小整数池
[-5, 256]之间的整数由于经常用到,所以在python启动的时候,就会自动开辟一块空间放入这些整数,不会被垃圾回收机制回收
Pycharm和jupyter做的一些封装机制:对于一些时间段,并且占用内存比较小的变量值,会放在同一块内存中
x = 10
y = 10
# 10的引用计数其实是2,可以用id()验证
x = -6
y = -6
# -6的计数为1
定义变量的三个特征
number = 7
print(number)
print(type(number))
print(id(number))
# 民工三连
day05-2 变量、常量、注释以及内存管理的更多相关文章
- Day 03 知识点[python程序运行的方式、变量、注释、内存管理、数据类型]
执行Python程序的两种方式 第一种:交互式,在cmd中运行 优点:调试程序方便,直接给出结果 缺点:无法保存,关掉cmd窗口数据就消失 第二种:命令行式通过cmd中输入Python3文本 优点:数 ...
- java静态类、静态方法、静态代码块,静态变量及实例方法,实例变量初始化顺序及内存管理,机制
1.当一个类被第一次使用时,它需要被类加载器加载,而加载过程涉及以下两点: (1)在加载一个类时,如果它的父类还未被加载,那么其父类必须先被加载: (2)当类加载到内存之后,按照在代码中的出现顺序执行 ...
- python的学习笔记01_2变量 常量 注释 用户交互 格式化输出
变量是什么? 变量的作用 Variables are used to store information to be referenced and manipulated in a computer ...
- javascript 变量,作用域,内存管理小结
js的变量保存两种类型的数据——基本数据类型与引用类型.具有以下几点特征: 变量: 1)基本类型值在内存中占固定大小的空间,因此被保存在栈内存中; 2) 把保存基本类型值得变量赋给另一个变量,会创 ...
- Ptyhon变量,常量,注释
变量的命名规则: 1.变量由字母,数字,下划线搭配而成 2.变量不能以数字开头 3.变量也不能是Python的关键字. 4.变量不要有中文 5.名字要有意义 6.名字不要太长 变量的两种命名方式: 1 ...
- python基础知识梳理-----1变量,常量,注释
因为公司用的是delphi ,所以自学了一阵delphi,但是随着语言的发展,delphi的前景堪忧啊.辞职以后打算好好学学python,然后找找数据分析和爬虫方面的工作. 记录此贴,仅作学习使用,所 ...
- 《JavaScript高级程序设计》——第四章 变量、作用域和内存管理
JavaScript变量可以用保存两种类型的值:基本类型值和引用类型值.基本类型的值源自以下基本类型数据:Undefined.Null.Boolean.Number和String. 从一个变量向另一个 ...
- iOS内存管理retain,assign,copy,strong,weak
转自:http://www.cnblogs.com/nonato/archive/2013/11/28/3447162.html iOS的对象都继承于NSObject, 该对象有一个方法:retain ...
- 27 JavaScript的引入&注释&弹窗&变量常量&数据类型及转换&内存&垃圾回收
JS的引入: 1 内部引入 绑定元素事件如onclick="" 绑定锚点如href="JavaScript:void(0)" script标签引入,注意:如果标 ...
随机推荐
- Python 3.8 新特性来袭
Python 3.8 新特性来袭 Python 3.8是Python语言的最新版本,它适合用于编写脚本.自动化以及机器学习和Web开发等各种任务.现在Python 3.8已经进入官方的beta阶段,这 ...
- Centos 7.2 安装和卸载 MySQL 5.7
一.背景 闲暇之余在虚拟机安装了 Centos 7.2 系统,按照 <简单安装MySQL(RPM方式)> 这篇文章安装 MySQL ,发现由于包依赖的问题安装失败,于是索性在官网查询相关文 ...
- 【JavaScript框架封装】实现一个类似于JQuery的属性框架的封装
// 属性框架 (function (xframe) { // 需要参与链式访问的(必须使用prototype的方式来给对象扩充方法) xframe.extend({ /** * 获取/设置某一个元素 ...
- There are no packages available for installation. Sublime3解决方法
最近在学习Vue,在配置sublime3的时候,想要高亮vue的语法,下载点插件 Package Control的时候,总报 There are no packages available for ...
- ubuntu的安装
前言 对计算机的学习来说,使用Linux系统是有好处的,Windows是商业的,无法学习操作系统的内在东西,所以选择折腾Linux. 我选择了ubuntu作为学习系统,Linux发行版没有什么最好之说 ...
- 2019-03-29 Vagrant Docker Toolbox 下载安装
1.无脑安装Vagrant Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境.它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境. http ...
- BA-siemens-ppm模块调试
第一部分:现场接线 1. 拨码:朝向数字那一端为0,远离数字那一端为1,PPM的地址设定方法就是将拨码器拨为跟系统架构表一样的数字,比如一个1U32的编号为77020,那么它的编号就是20,将4和16 ...
- BA-Delta知识点
问题: DSM-RTR的网络负载能力是怎样的?每条总线带32个模块吗?MS/TP总线上的模块需要拨地址码吗?最大可以承载多少个点? 答:理论值是30,最佳性能是21个,一般情况25-28个 linkn ...
- BA-siemens-TX-IO模块照片
西门子楼宇自控用到的P1模块是这样的 TX-16D模块是这样的 TX-8X模块是这样的: TX-6R模块是这样的: TX-IO总线连接模块( 此模块供电和通讯加起来共需三芯线):
- 有关文档碎片(document fragment)的使用方法
通常情况下改动.删除或者添加DOM元素. 更新DOM会导致浏览器又一次绘制屏幕,也会导 致reflow,这样会带来巨大的开销.我们通常解决这的办法尽量降低更新DOM.这也就意 味着将DOM的改变分批处 ...