2.2 变量

在初中代数的时候,我们就学习了变量。变量的作用是把具体的数值抽象,没有变量其实就无所谓程序了。例如使用一个软件或者app,需要登录,那么这个用户名就是一个变量,密码也是一个变量。用户输入的账号和密码会分别保存到两个变量里。
变量是编程语言里保存数据的最小单元。
python里面的变量和代数里面的变量类似,但稍有不同。变量的特点是:
特点一:变量是有类型的;
特点二:变量必须初始化才能使用。
什么叫做变量的定义?变量的定义就是说明这个变量的类型,同时在内存中分配一个位置来保存变量的值,即使这个变量目前还没有赋值。例如:
i=8
print(i)
print(k)
变量的初始化,其实就是第一次给变量赋值。通常来说,可以把变量的定义和变量的初始化写在一起,也就是”i=8”这样的写法。我们称之为:“把整数8赋给变量i”。
上面的代码第三行会报错,因为k并没有赋值

以前学习的变量通常是a、b、m、n这样的简单字母,而在编写复杂代码的时候,就需要更直观的变量名,例如appleNumber这样的名字,而对于变量名的规范,有以下几点,否则会出语法错误:
(1)变量的开头第一个字符不能是数字
(2)变量通常都由字母和数字组成,可以使用各国的语言字符(例如中文、日语、韩语),变量里可使用的特殊字符只有下划线 _。其余的特殊字符例如#、@、!、(*等等都是不允许在变量名里出现的。
(3)不可以使用内置的关键字(例如if、for)作为变量名。 变量名还支持中文,但绝不推荐使用中文,因为非常容易造成不可恢复的乱码。 所有内置的关键字,写出来,在编译器里面都显示成不同的颜色,例如下面代码的import、if:
import pymysql
_i_=8
if _i_>4:
    print(_i_)
这里就命名了一个下划线开头的变量_i_
假设写出if =9就是非法的:因为if不能作为变量名,违反了规则(3)。
符合这三条,就可以创建出任意一个变量。
还有一条关于命名方法的,非强制性:变量的命名通常来说要求望文知义,由字母组成,新单词的第一个字母大写以便区分单词。 例如:apple 就比aaabb好,第一个可以看出来是苹果,也许这个是苹果的数量,但是aaabb看上去就像是随便打上去的。gongZi 这个拼音读起来就是工资,比起fdadfad这样的变量更容易理解。