在此先复习一下1-5节的内容,Python程序在设计变量时,不用先定义,它自身会由所设定的内容决定自己的数据形态。
变量是一个暂时存储数据的地方,对于2-1节的内容而言,如果你今天获得了时薪调整,时薪从120元调整到125元,如果想要重新计算一年可以存储多少钱,你将发现所有的计算将要重新开始。为了解决这个问题,我们可以考虑将时薪设为一个变量,未来如果要调整时薪,直接更改变量内容即可。
在Python中可以用“=”设定变量的内容,在这个实例中,我们建立了一个变量x,然后用下列方式设定时薪,如果想要用Python列出时薪数据,可以使用x或print( x )函数。
如果今天已经调整薪资,时薪从120元调整到125元,那么我们可以用下列方式表达。
一个程序是可以使用多个变量的,如果我们想计算一天工作8小时,一年工作300天,可以赚多少钱,假设用变量y存储一年工作所赚的钱,可以用下列方式计算。
如果每个月花费是9000元,使用变量z存储每个月花费,可以用下列方式计算每年的花费,我们使用a存储每年的花费。
如果我们想计算每年可以存储多少钱,使用b存储每年所存储的钱,可以使用下列方式计算。
上述我们很顺利地使用Python Shell计算了每年可以存储多少钱,可是上述使用Python Shell做运算潜藏最大的问题是,只要过了一段时间,我们可能忘记当初所有设定的变量代表什么意义。因此在设计程序时,如果为变量取个有意义的名称,未来看到程序时,可以比较容易记得。下列是笔者重新设计的变量名称:
· 时薪:hourly_salary ,用此变量代替x,每小时的薪资。
· 年薪:annual_salary ,用此变量代替y,一年工作所赚的钱。
· 月支出:monthly_fee ,用此变量代替z,每个月花费。
· 年支出:annual_fee ,用此变量代替a,每年的花费。
· 年存储:annual_savings ,用此变量代替b,每年所存储的钱。
如果现在使用上述变量重新设计程序,可以得到下列结果。
相信经过上述说明,读者应该了解变量的基本意义了。
Python是一个 动态语言 ,它处理变量的概念与一般静态语言不同。对于静态语言而言,例如:C、C++,当定义变量时内存就会预留空间存储此变量内容。例如:若是定义x=10、y=10时,内存内容如 下方左图所示 。
对于Python而言,变量所使用的是 参照(reference)地址 的概念,设定一个变量x等于10时,Python会在内存某个地址存储10,此时我们建立的变量x好像是一个 标志 (tag),标志内容是存储10的内存地址。如果有另一个变量y也是10,则变量y的标志内容也是存储10的内存地址。相当于变量是名称,不是地址,相关概念可以参考上方右图。
Python可以使用 id( ) 函数获得变量的地址,可参考下列语法。
实例: 列出变量的地址,相同内容的变量会有相同的地址。