什么是变量:描述变化的世间万物的状态
身高:180 体重140 身高体重都会变化
变量的组成
变量名(接受变量值) =(赋值符号) 变量值(数值) 定义变量
变量名的命名规范
1变量名必须由数字/字母/下划线_组成
2下划线只在连接的时候用 (zhazhbiao_height)
3变量名必须具有可读性(意义) 存不是目的,取才有目的
4不要使用关键字(具有某种特定的意义)
['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']
变量名的两种定义方式
height_of_zhazhabiao = 160 (下划线定义)约定俗成
heightOfZhazhabiao = 160 (驼峰体) 很low,c,java
常量:不变的量
常量本质上也是个变量,只不过变量名全大写约定俗成成为了常量,以后尽量不要改变,除非你想被老板辞退
age = 18 变量
AGE = 18 所有字母全部大写
python变量内存管理
1定义一个变量,内存就开辟一个内存空间存储这个变量
height = 180
print(180) print会自动帮你创建一个变量,打印完之后,马上释放180的内存空间
2引用计数(针对变量值)
x = height = 180 180的引用计数+1
del x 释放的是引用计数,180的引用计数为1
del height 引用计数为0
引用计数为0时,出发垃圾回收机制,释放内存占用
a = 256
b = 256
print(id(a)) 打印内存地址
print(id(b)) 打印内存地址
[-5,256] (小整数池)在python解释器启动的时候就自动在内存里面开辟了空间,所以说他不会受到垃圾回收机制的影响
获取变量值得内存地址针对变量值
print(id(height))
属于类型,针对变量值
print(type(height)) int类型(整型)
name = 'nick'
print(type(name)) str类型(字符串)
# 花式赋值
height_of_nick = 180
height_of_handsome = 160
height_of_yongjiu = 170
交叉赋值(解压缩)
height_of_nick,height_of_handsome ,height_of_yongjiu =180,160,170
print(height_of_nick,height_of_handsome ,height_of_yongjiu)
内存地址相同,值一定相同;值相同,内存地址不一定相同
交叉赋值
x,y = y,x (真正的交叉赋值)
一种中间替换的思想
z = x
x = y
y = z
链式赋值(值相同才能使用)
a=b=c=10
print(a,b,c)
注释
加井号键(#)
1解释 (解释代码的意思,一般放到代码的后面用,代码块的解释一般放到代码块的上面)
2让代码在python解释器运行的时候不被解释,即让他无意义