一、变量
1、定义:变是指可变化,量是指事物的状态,所以变量即是指事物的可变状态,比如年龄,性别,数量等。
2、作用:为了让计算机像人一样去记忆事物的某种可变状态,程序的执行,本质上就是一系列的状态变化,变化的结果是程序执行的直接体现,所以引用变量来反映并保存这种变化。
3、用法:
①基本使用原则:先定义,再引用。
name = ‘tom‘ # 定义name age = 18 # 定义age print(name) # 输出name print(age) # 输出age
②内存管理之垃圾回收机制:
Ⅰ:垃圾的定义:一个变量被绑定的变量名的个数称为引用计数,当引用计数为0时,该变量无法被访问到,称为垃圾。
Ⅱ:引用技术的增加与减少:
a = 10 # 值10的引用计数变为1 b = a # 值10的引用计数变为2 c = b # 值10的引用计数变为3 del a # 解除变量名a与值10的绑定关系,值10的引用计数变为2 del b # 解除变量名b与值10的绑定关系,值10的引用计数变为1 c = 20 # 把变量名c与值20建立新的绑定关系,原来与值10的绑定关系解除,值10的引用计数变为0,此时值10作为垃圾被回收移出内存空间
③变量的三大组成部分:
Ⅰ:变量名:指向等号右侧变量值的内存地址,用来访问该变量值。
Ⅱ:赋值符号:即等号,将变量值的内存地址绑定给变量名。
Ⅲ:变量值:记录事物的状态。
④变量名的命名规则:
Ⅰ:原则:变量名应该见名知意,在此前提下,变量名应尽可能精短。
Ⅱ:组成:变量名只能由字母,数字,下划线任意组合而成,但第一个字符不能是数字。
Ⅲ:关键字:程序已经事先定义好的功能,因而不能声明为变量名,如,print,and,break...等等。
Ⅳ:纯小写与下划线的组合:如,age_of_tom,在python中,是比较常见的命名方式,比较推荐。
Ⅴ:驼峰体:如,AgeOfTom。
Ⅵ:不良命名形式:虽然使用汉语拼音或汉字作为变量名,从语法层面并不会报错,但是会显得代码不专业,应尽量避免使用。
⑤变量值的三个特征:
Ⅰ:id:一个变量值对应一个id,映射了变量值的内存地址,内存地址不同则id不同。
Ⅱ:type:表示变量值的类型,不同类型的值j记录不同的状态。
Ⅲ:value:变量值本身。
⑥is与==:
Ⅰ:is:比较左右两个值的id是否相同。
Ⅱ:==:比较左右两个值本身是否相同。
Ⅲ:总结:id不同的情况下,值有可能相同,即两块不同内存空间里可以存相同的值。而id相同的情况下,值一定相同。即,a is b 成立,则 a == b 必然成立。
a = ‘ab‘ #将‘ab‘赋值给a b = ‘ab‘ #将‘ab‘赋值给b,此时a与b的值相同,但是id不同 print(a == b) #结果为True print(a is b) #结果为False
⑦:小整数池:
Ⅰ:含义:在python解释器启动的同时,会在内存中申请好一部分空间存放常用的整数(-5~256)。
Ⅱ:用途:所有值为相同整数的变量的id均指向同一个内存空间,避免了常用整数对内存空间的重复占用。
a = 10 # 将值10赋值给a b = 10 # 将值10赋值给b print(a is b) # 结果为True,说明a与b的id相同,即指向内存同一个空间 c = -10 # 将值-10赋值给c d = -10 # 将值-10赋值给d print(c is d) # 结果为False,说明c与d的id不同,因为值-10超出了小整数池的范围
⑧常量:
Ⅰ定义:不变的量。
Ⅱ:python中的常量:在python的语法中没有常量的概念,但是在程序的开发中会涉及常量的使用。
Ⅲ:命名规范:将变量名的小写字母全部大写通常代表常量,但只是一种约定,本质上与一般变量名并无区别。如,AGE_OF_TOM。
二、练习
原文:https://www.cnblogs.com/caoyu080202201/p/12409573.html