机器人Python青少年编程开发实例
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

4.2 变量及其类型

4.2.1 变量

变量是表示可变状态、具有存储空间的抽象。这样的定义,大家看起来会发晕。什么是抽象啊?其实,说白了,变量就是会变的量值。在程序运行过程中,变量会随着程序的运行而随时改变,可以是一个值,也可以是一组值。

要理解变量,首先要知道“内存”。计算机的存储主要分两个部分,一部分是硬盘。硬盘可以长期存储文件,如电影、游戏等,这种存储不依赖于有没有通电,电脑有没有开机,文件都会一直保存在电脑硬盘里。另一部分是内存。内存只有在通电时才会存储,断电后,内存里的数据就会全部被清空。变量就存储在内存中。

为了更好地理解什么是内存,我们可以把内存看成众多小房间。当电脑通电工作时每个房间存储着不同的东西,当电脑关机后,小房间里的东西就清空了。举个例子来说明,我们学习时,需要用到钢笔、铅笔、橡皮、直尺等。我来管理学生的学习用品,在1号房间放钢笔,2号房间放铅笔,3号房间放橡皮,4号房间放直尺。你来找我领学习用品,我需要先告诉你每个房间放的是什么,这个过程叫作“声明”和“赋值”。然后你会去1号房间领钢笔。过了几天,我又进了一批量角器,于是我把1号房间改放量角器,5号房间放钢笔,于是再次进行了“赋值”。这时,你又要领钢笔,你就会直接去5号房间了。

例子里的每个房间就是变量,只是我们在计算机编程时,一般不用中文,所以不会写成1号房间、2号房间等,而是常用变量名来表示,如用n表示1号房间,用m表示2号房间等。那么从“声明”到“赋值”的过程可以表示如下。

声明:

      n学习用品类
      m学习用品类

赋值:

      n=pen(钢笔)
      m=pencil(铅笔)

几天后,再次赋值:

      n=protractor(量角器)

到这里,我们就能理解程序中的变量通常是怎么工作的。例如:

      i=1
      j=5
      j=j+i

在Python语言中,i=1和j=5既是赋值语句又是声明语句,i赋值为1,又由于1是整数,所以i同时被声明为整数类型(在4.2.3节将详细讲解)。当然,为了使程序更加清晰,在编程时也完全可以在程序开始的时候先声明变量类型,如添加int i, j声明语句。j=j+i,再次改变了j的值,最终j不是等于5,而是等于6。

【思考】

每个变量都具有类型和值两个属性,那么除可以给变量赋值为整数以外,还能给变量赋什么值呢?你能举出几个例子吗?