Python的内存管理、命名规则、3个特性讲解
理解变量:
变:现实世界中的状态是会发生改变的
量:衡量/记录现实世界中的状态,让计算机能够像人一样去识别世间万物(例如:一个人的身高、体重等这些信息)
为什么要变量:
程序执行的本质就是一系列状态的变化
如何用变量:
|
定义变量 Name = ”yangzhizong” |
||
|
变量名 |
赋值符号 |
变量值 |
|
变量名 |
变量名用来引用变量值的,但凡要引用变量值都需要通过变量名 |
|
|
赋值符号 |
赋值 |
|
|
变量值 |
即我们存放的数据,是用来记录现实世界中的某种状态的 |
|
Print(“name”)完成这个打印输出操作其实要2步
第一步:先找到name对应的变量值
第二部:运行输出结果
变量名的命名规则:
大前提是变量明的命名规则应该能反映变量值所记录的状态
例如:username=”yangzhizong”
变量名只能是字母、数字、或下划线的任意组合
变量名的第一字符不能是数字
关键字不能用来做为变量名(例如”print” “class” “is”等)
变量名的两种风格:
驼峰体
NameOFyzz=27
下划线
Name_of_yzz=yangzhizong
推荐使用下划线的命名规则
注意:定义变量名不好的方式
变量名为中文、拼音
变量名过长
变量名词不达意
常量:
强调:在python中没有从语法意义上去强制性定义常量,如果在python中需要定义常量,那应该将变量名全改为大写,例如:
NAME_OF_YZZ=YANGZHIZONG
Python的内存管理:
x=10
x=11
什么样的算垃圾:
只有绑定的有门牌号就不算垃圾
没有绑定门牌号的就算垃圾
x=10
y=x
x=10
y=x
x=11
定义变量的3个特征:例如x=10
id
print(id(x))
类型(变量值的类型)
print(type(x))
值x
判断值是否相等: ==
Name1=”yangzhizong”
Name2=”yangzhizong”
Print(name1==name2)
变量值是相等的,所以输出为 True
判断id是否相等:is
x=11
y=x
print(x==y) —》 True
prnt(x is y) —》 True
总结:
id相等,值一定相等
值相等,id不一定相等(一个内存空间里面,我可以放2块儿内容值一摸一样的内容,但是2个空间所对应的id是不一样的)
例如:
Python的内存管理、命名规则、3个特性讲解的更多相关文章
- python学习笔记10(Python的内存管理)
用这张图激励一下自己,身边也就只有一位全栈数据工程师!!! 32. Python的内存管理 1. 对象的内存使用 对于整型和短字符串对象,一般内存中只有一个存储,多次引用.其他的长字符串和其他对象 ...
- python的内存管理机制
先从较浅的层面来说,Python的内存管理机制可以从三个方面来讲 (1)垃圾回收 (2)引用计数 (3)内存池机制 一.垃圾回收: python不像C++,Java等语言一样,他们可以不用事先声明变量 ...
- day21(1)---python的内存管理
垃圾回收机制: 不能被程序访问到的数据,就称之为垃圾. 引用计数:引用计数是用来记录值的内存地址被记录的次数的 每一次对值地址的引用都可以使得该值的引用计数+1 每一次对值地址的释放都可以使得该值的引 ...
- python的内存管理与垃圾回收机制学习
一.python内存申请: 1.python的内存管理分为六层:最底的两层有OS控制.第三层是调用C的malloc和free等进行内存控制.第四层第五层是python的内存池.最上层使我们接触的直接对 ...
- python的内存管理机制(zz)
本文转载自:http://www.cnblogs.com/CBDoctor/p/3781078.html 先从较浅的层面来说,Python的内存管理机制可以从三个方面来讲 (1)垃圾回收 (2)引用计 ...
- 【转】python的内存管理机制
http://developer.51cto.com/art/201007/213585.htm 内存管理,对于Python这样的动态语言,是至关重要的一部分,它在很大程度上甚至决定了Python的执 ...
- Python深入06 Python的内存管理
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 语言的内存管理是语言设计的一个重要方面.它是决定语言性能的重要因素.无论是C语言的 ...
- Python原理 -- 内存管理
语言的内存管理是语言设计的一个重要方面. 它是决定语言性能的重要因素. 无论是 c语言 的手工管理, 还是 Java 的垃圾回收, 都成为语言最重要的特种. 以下以 python 为例, 说明一门动态 ...
- Theano教程:Python的内存管理
在写大型程序时候的一大挑战是如何保证最少的内存使用率.但是在Python中的内存管理是比较简单的.Python显示分配内存,使用引用计数系统管理对象,当指向某一个对象的引用数变为 0 的时候,该对象所 ...
随机推荐
- gitlab api批量操作 批量添加用户
import os,time import requests,json # def downloadFile(name, url): # headers = {'Proxy-Connection': ...
- Delphi7使用二维码
参考:http://jingyan.baidu.com/article/e75057f2ad6481ebc81a897b.html 首先下载对应的 dll (已经上传到博客园文件) 然后就是Delph ...
- 将Java应用部署到SAP云平台neo环境的两种方式
方法1 - 使用Eclipse Eclipse里新建一个服务器: 服务器类型选择SAP Cloud Platform: 点Finish,成功创建了一个Server: Eclipse里选择要部署的项目, ...
- [dp uestc oj] G - 邱老师玩游戏
G - 邱老师玩游戏 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submi ...
- Processing分形之一——Wallpaper
之前用C语言实现过一些分形,但是代码比较复杂.而对于天生对绘图友好的Processing,及其方便. 在大自然中分形普遍存在,我们用图形模拟,主要是找到一个贴近的函数. 代码 /** * Wallpa ...
- JS实现2,8,10,16进制的相互转换
// 10进制转为16进制 var a=1234567890; console.log(a.toString(16)) //499602d2 // 16进制转为10进制 var num=parseIn ...
- 2018.3.31 java中的递归
java中的递归 1.概念 定义一个方法时,出现本方法调用本方法的过程,称之为递归 2.特点 必然有一个边界条件 使用递归代码往往更简洁,可读性强 3.什么时候使用递归 n的阶乘和n的累加定义 f(n ...
- Linux运维笔记--第四部
第四部 3. Linux扩展正则表达式实战 扩展的正则表达式:ERE(主要用于egrep或grep -E) + 重复一个或一个以上前面的字符. (*是0或多个) ? 重复0个或一个 ...
- NOIP计划索引
药丸的节奏 亟待解决的问题 灵光一现的trick 2018上学期刷题记录 NOIP2018 - 暑期博客整理 NOIP2018 - 一些板子 NOIP2018 - 每日填坑
- 【MySql】Mysql ERROR 1067: Invalid default value for ‘date’ 解决
在给一个表添加字段的时候,忽然发现会报一个date类型的字段的默认值错误,郁闷~ 经过排查,原来是MySQL的配置问题,在wamp下,MySQL 5.7里是没有设置 SQL_MODE 的. 1.my. ...