什么是变量
1.变量
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。
- 量:记下事物的状态
- 变:事物的状态是可以变化的
2.为何要用变量
为了让计算机能够像人一样记忆事物的状态,且状态是可以变化的,变量存的状态是存放于计算机的内存中的
3.如何用变量
原则:先定义、后引用
变量的定义
1.定义
# “=”的左边是变量名,中间是赋值符号,右边是变量的变量值,变量名关联着变量值在存储器中的存储地址
name = "egon"
age = 18
salary = 3.1
2.变量定义的三个组成部分
- 变量名: 关联一个存储地址,用来找到变量值
- 赋值符号:把存储地址绑定给变量名
- 变量值:就是我们记忆的事物的状态或者数据
3.变量名的命名规范
大前提:变量名的命名应该在保证见名知意的前提下,尽可能的简短
- 由字母、数字、下划线组成
- 不能以数字开头
- 不能使用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’]
4.变量名的命名风格
- 纯小写+下划线(变量名推荐)
age_of_oldboy = 73
- 驼峰体
AgeOfOldboy = 733
引用变量值
print(name)
xxx # 没有语法错误,有逻辑错误
变量名在等号左边,代表的是赋值操作
变量名只要不在等号左边,代表的是取值操作
age = 18
print(age + 1)
res = age + 1
print(res)
变量值的两大特征
1.id:反映的是内存地址
例1:
x=10
y=x
print(id(x))
print(id(y))
执行结果:例2:
x=10
y="aaaa"
print(id(x))
print(id(y))
执行结果:
2.is:判断的是id是否相等
例1:
x=1111
y=2222
print(x is y)
执行结果:false
例2:
x=1111
y=x
print(x is y)
执行结果:ture
3.==判断的是值是否相等
name1="egon"
name2="egon"
print(name1 == name2)
执行结果:ture
强调:
1.id如果相等,值一定相等
2.id如果不相等,值有可能相等
小整数池
内存管理:垃圾回收机制GC
python解释器会定期回收那些没有绑定变量名的值的地址空间
引用计数
x=10 # 值10的引用计数为1
y=x # 值10的引用计数为2
# print(x)
# print(y)
y=123 # 值10的引用计数减少为1
del x # 值10的引用计数减少为0
常量
变量:值不可以被改变的量
python中变量名全为大写的代表常量