什么是变量?总结不好也记不得它的完整定义,就举个例子来便于自己学习总结吧。假如我们要计算1+2的值,那么首先在内存中要存储两个值,一个是:1,一个是:2。内存中有了这两个值,计算的时候就会找到它们进行计算。但是我们可能是计算任意两个数相加,数学中我们常用 x+y 来表示两个任意的数相加。假如在程序中我们用a+b来表示两个数相加,那么当a=1,b=2时,就可以计算出1+2=3,此时这个a和b就是变量,它们也可以等于其他数值,结果也是随着数值的改变而改变的。a和b的值能变动,就叫变量。刚才说了内存中存了1和2,那么a和b与内存中的1和2有什么联系呢,可以理解为a=1,b=2就是把内存中的1取个名字叫a,内存中的2取个名字叫b。这样按名字就能找到它的值了。
知道了变量的名字(上面的a和b)就是内存中存储的数据的别名,那么a=1,b=a,表示什么意思呢?a=1 表示内存中存有一个数值1,给它取个名字叫a。b=a表示给a取个名字叫b吗?非也。b=a 表示b和a一样,都是内存中1的名字。此时内存中的1有了两个名字:a和b。b的代表的是也是1。看下图运行结果。
如果a=2 那么b是多少呢?刚才说了b=a,表示内存中的1有两个名字a和b,此时a=2了,就是内存中存的2取名叫做a了,a已经不是内存中存的1的别名了,变成了2的名子。但b还是1的名字,并没有变成内存中其他数据的名字。所以b表示的还是1。a却表示2了。看看实际运行结果吧
上面简单的说了变量的意思,那么在定义变量的时候有什么规则呢?
1、变量名只能是字母、数字或和下划线的组合。
2、数字不能作为变量名的开头。
3、python中的一些关键字不能当做变量,这些关键字已经被系统使用了,如果作为变量名就不知道是系统内置的,还是自己定义的。
4、变量名是区分大写的。
5、变量名中不能含有空格。
比如:name = '大能猫',name_maomao = '小能猫'是可以的,12name = “大能猫”,n ame = "大能猫"是不行的。
有变量就有常量。变量是能改变的,名字可以随意给哪个内存中的数据用嘛。而常量就是不能变的。常量的定义必须是大写字母。比如:NAME = "大能猫",表示NAME就是内存中“大能猫”这个数据的专属名字。NAME不会拿去给内存中其他的数据当做名字了。那么整个程序运行过程中,NAME代表的都是"大能猫"。python中其实并没有做这样的限制,如果非要让NAME = "大花猫" 也行的。只是我们约定了常量就这样表示,所以我们在python中,常量的使用,还是要遵从不要改变它的原则。
PS:只是个人在学习python过程中的笔记总结,便于自己理解和记忆,有很多错误之处。不小心闯入者,切莫当真。如有误导,概不负责。另外欢迎路过的侠士对错误之处及时指正不胜感激。