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 的时候,该对象所 ...
随机推荐
- log4cpp安装使用
1. 主页:http://log4cpp.sourceforge.net“Log4cpp is library of C++ classes for flexible logging to files ...
- HDU 3001 Travelling (状压DP,3进制)
题意: 给出n<=10个点,有m条边的无向图.问:可以从任意点出发,至多经过同一个点2次,遍历所有点的最小费用? 思路: 本题就是要卡你的内存,由于至多可经过同一个点2次,所以只能用3进制来表示 ...
- BZOJ 3130: [Sdoi2013]费用流 网络流+二分
3130: [Sdoi2013]费用流 Time Limit: 10 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 1230 Solved: ...
- Codeforces Round #411 div2
A. Fake NP 题意:询问一个区间[L,R]出现次数最多的正整数因子(>1). 一个区间内一个因子P出现次数大概为[R/P]-[(L-1)/P],约等于(R-L+1)/P,P取2时最优.注 ...
- noip模拟赛#38
我打开了#39的problem...想了半个小时多发现我一道题都不会写...于是我打开了#38的problem T1:循环数字的定义为能够将该数划分为若干相同长度的段并且都相同. n=2e18. =& ...
- python判断平衡二叉树
题目:输入一棵二叉树,判断该二叉树是否是平衡二叉树.若左右子树深度差不超过1则为一颗平衡二叉树. 思路: 使用获取二叉树深度的方法来获取左右子树的深度 左右深度相减,若大于1返回False 通过递归对 ...
- 关于"动态语言" "静态语言" "静态类型语言" "动态类型语言"的区别
参考链接:关于“编译型”“解释型”“动态语言”“静态语言”“动态类型语言”“静态类型语言”的区分以及优缺点(汇总整理) 很多人把这两类混为一谈,但是这是完全不同的两个概念!!! 动态和静态语言主要看的 ...
- JTT808、JTT809、JTT796、JTT794、JTT1077、JTT1078区别与交通部道路运输车辆卫星定位系统部标标准大全下载地址
部标JT/T808协议.JT/T809协议.JT/T796标准.JT/T794标准的区别,他们是基于不同的通信场景,不同的通信对象,不同的设计目的和目标而制定出来的.首先要知道这些标准的全称是什么意思 ...
- java String中的replace(oldChar,newChar) replace(CharSequence target,CharSequence replacement) replaceAll replaceFirst 面试题:输入英文语句,单词首字符大写后输出 char String int 相互转换
package com.swift; import java.util.Scanner; public class FirstChat_ToCaps_Test { public static void ...
- PCA检测人脸的简单示例_matlab实现
PCA检测人脸的简单示例,matlab R2009b上实现训练:训练用的20副人脸: %训练%Lx=X'*Xclear;clc;train_path='..\Data\TrainingSet\';ph ...