python

请打开命令行,逐行输入下面的内容,观察结果。

(还是不必敲从“#”开始到该行末尾的内容)

出现的问题

虽然我们可以这样一口气打印很多遍“Hello World!”:

print("Hello World!" * 5)

但要是想在不同位置打印,就得这样:

print("Hello World!")
print(5)
print("Hello World!")
print(3.6)
print("Hello World!")
print(15 ** -5)
print("Hello World!")

很麻烦。

英雄的亮相

所以名曰“变量”的英雄就登场来拯救世界了:

hw = "Hello World!" # “=”在这里是“赋值”的意思,也就是给右边的东西贴上个标签(左边的东西,即变量)

print(hw)

跟现实世界一样,在python里,也是一提标签就能对应到被贴的东西。于是接下来就可以这么写了:

print(hw)
print(73 + 5)
print(hw)
print(-4)
print(hw)
print(hw, "And bye!")
print(hw+" And bye!")

标签当然可以被扯下来,再贴到别的东西上。(“变”量,就是要“变”的)

hw = "Hi, world!" # 假设我们忽然改变了打招呼的习惯
print(hw)

数字变量

自然,数字也可以被贴“标签”:

five = 5 # 不过这样没什么意义,而且有人可能会恶作剧,写下什么“five = 6”
print(five)
print(five + 4)
print(hw * five)
pi = 3.1415926 # 这样就有点意义了:要是每次都得重新输一遍π值,你很可能会手滑
print(pi)
pi = 3.1415 # 不同时候很可能会要求不同精度,用上变量就只需改这一个地方
print(pi)

运算式变量

凡能被打印的东西(所谓“表达式”),都能被贴标签,各类运算式并不是例外:

a = 5 + 8.67
print(a)
b = 6 - 18 * 75 + 9 % 4
print(b)
c = "Hello World" * 5
print(c)

变量间的赋值与运算

有整理癖的人,还会给标签再贴上标签:

d = a # 给绰号为“a”的家伙又起了个绰号“d”
print(d)
e = a + b # 给“a”和“b”这俩人,起了个组合名
print(e)
f = hw * five # 给“hw”乘以“five”这个行为产生的结果,起个别名
print(f)
print(a)
g = a + 10 # “小刘”长了十岁,就被叫做“大刘”了
print(a) # 但当时的“小刘”没有变
print(g)
a = a + 10 # 不过,“刘二狗”再混十年,还是“刘二狗”
print(a)

给变量起名的规则

标签的叫法是有一定规矩的,变量也一样,它只接受字母、数字和下划线的相互组合出来的名字:

&7?/ = 6 # 会出错
a_G6= '5'
hf_ = 6.5
_K64d = 'tms'

而且还不能以数字开头:

1 = 'one' # 会出错
3gx_D_p = 7 # 会出错