本文的内容非常基础但是底层,日常编程中并不经常接触,可能对理解一些底层bug有一定帮助,总之是我最早两天学python的笔记内容改把改把就上传了,就当笔记系列的开头好了。
变量
什么是变量:可以变化的量
变量用于:记忆事物的一种状态,且状态能够变化
怎么用?
原则:先定义,后引用
定义的本质是开辟内存空间来存放变量,并初始化记录变量的状态
变量的组成
变量由变量名、变量值、赋值符号组成,我们结合下图可以将定义语句理解为在栈区和堆区分别开辟一个存储空间,并通过变量名指向变量值来建立连接。
![](https://i-blog.csdnimg.cn/blog_migrate/59874594ef67c56315127016a0944a1f.png)
赋值的过程,对一个新的变量而言就是建立新的变量值引用
对一个本来就有的变量而言要解除旧引用,建立新引用
栈区和堆区
栈区存放变量名,通过对栈区的搜索找到变量,变量名中存放了堆区的内存地址,对应的是变量值
name='法球' #定义
print(name) #引用
'''
用赋值语句定义,定义变量名为name,变量值为‘法球’
定义时,变量名在栈区开辟一块空间,变量值会在堆区开辟一块空间,变量名存放指向堆区的内存地址
'''
1、变量名:存放等号右侧值即变量值的内存地址
命名原则
- 字母、数字、下划线的任意组合
- 第一个字符不是数字
- 不要用关键字申明成变量如print
命名规范
- 用英文不要用拼音
- 风格一:纯小写加下划线:age-of-frball(现在一般用风格1)
- 风格二:驼峰体:AgeOfFrball (特殊场景下可能用到)
2、变量值:代表记录事物的状态
变量值必须通过变量名才能找到,如果变量名所存放的内存地址发生改变,也就意味着变量名不再指向变量值,这个断开链接的变量值就处于无法被取用。