变量就像是一个用来装东西的盒子,我们把要存储的东西放在这个盒子里面,再给这个盒子起一个名字。当我们需要用到盒子里的东西的时候,只要说出这个盒子的名字,就可以找到其中的东西了。盒子里的东西是可以变化的,也就是说,我们可以把盒子里原来的东西取出来,再把其他的东西放进去。例如,我们将这个盒子(变量)命名为box,在其中放入数字12。那么,以后就可以用box来引用这个变量,它的值就是12。当我们把12从盒子中取出,再放入另一个数字21的时候,如果此后再引用变量box,它的值就变成21了,如图2-1所示。
图2-1
提示 变量是存储在内存中的值。这就意味着,当我们创建变量时,会在内存中开辟一个空间。根据变量的数据类型,解释器会分配指定的内存,并决定什么数据可以存储在内存中。因此,我们可以为变量指定不同的数据类型,这些变量可以存储整数、小数或字符等。
在Python中,声明变量很简单,直接为变量起一个名字,并且用等号(=)为它赋值就可以了。这个等号叫作赋值运算符,赋值运算符(=)左边是一个变量名,赋值运算符(=)右边是存储在变量中的值。
例如,我们声明一个叫作box的变量,然后将12赋值给变量box。
>>> box=12
然后,我们可以在提示符后面输入box,来看一下这个变量中的内容。
>>> box 12
我们看到box中的内容是12。如果我们将数字21重新赋值给box,那么box的值就会从12变为21,这就相当于图2-1所示的操作。
>>> box=21 >>> box 21
提示 如果代码前面用>>>开始,表示这是在命令行窗口执行的语句。如果代码前面没有>>>开始,表示这是要在编辑器窗口完成的代码。
变量名可以包括字母、数字、下划线,但是数字不能作为变量的开头。例如,name1是合法的变量名,而1name就不是,如下所示:
>>> name1=5
>>> 1name=3
SyntaxError: invalid syntax
我们可以看到,当变量名称有问题的时候,会出现红色的错误提示“SyntaxError:invalid syntax”,这表示出现了语法错误。
Python的变量名是区分大小写的,例如,name和Name被看作是两个不同的变量,而不是相同的变量。如下所示,变量name中的内容是“John”,变量Name中的内容是“Johnson”,这是两个不同的变量。
>>> name="John" >>> Name="Johnson" >>> name 'John' >>> Name 'Johnson'
另外,也不要将Python的关键字和函数名作为变量名使用。例如,如果我们用关键字if当作变量并且为它赋值,系统直接就会报错。
>>> if=3
SyntaxError: invalid syntax
提示 解释器在加载上下文的时候,如果遇到一些预先设定的变量值,就会触发解释器内置的一些操作,这些预定的变量值就是关键字。
变量名不能够包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message是可以的,但变量名greeting message会引发错误。
>>> greeting_message="Hello"
>>> greeting message="Hello"
SyntaxError: invalid syntax
提示 总结一下,Python变量的命名规则。(1)变量名可以由字母、数字和下划线组成,但是不能以数字开头;(2)变量不能与关键字重名;(3)变量名是区分大小写的;(4)变量名不能够包含空格,但可使用下划线来分隔其中的单词。
通常,我们习惯于变量以小写字母开头,除了第一个单词外,其他单词的首字母都大写,如numberOfCandies。
除了上述变量命名方法之外,骆驼拼写法也很常用。就是将每个单词首字母大写,就像NumberOfCandies一样。之所以把这种拼写方法叫作骆驼拼写法,是因为这种形式看上去有点像是骆驼的驼峰,如图2-2所示。
图2-2
我们还可以用一条语句,同时为多个变量赋值,例如,可以将变量a、b和c都设置为1。
>>> a=b=c=1
这叫作多变量赋值。现在,我们可以看到变量a、b和c现在都等于1。
>>> a 1 >>> b 1 >>> c 1
在Python 3中,等号可以和一个算术操作符组合在一起,将计算结果重新赋值给左边的变量,这叫作增量赋值。
>>> age=9+1 >>> age 10
提示 增量赋值通过使用赋值操作符,将数学运算隐藏在赋值过程当中。和普通赋值相比,增量赋值不仅仅是写法上的改变,其有意义之处在于,赋值运算符左边的对象仅仅处理和操作了一次。