作为编程老师,有时候为了解释一个概念, 伤透了脑筋, 也伤害了头发。 为了保护有限的发量, 以后多积累, 平时发现好的解释, 就收集起来, 放到”如何解释“专栏里。
为什么需要字面量这个概念?
初学者看到这段代码, 可能会困惑:
fruit = "apple"
print(apple)
为什么行不通? print(apple)
, 你倒是帮我打印啊!什么? 我没为apple
加引号?凭啥要加引号啊? 加了引号后是个啥?
面对这种问题, 理解字面量、变量的概念, 就很有帮助。
什么是字面量?
任何编程语言都会有表达式。 表达式是可以求值的那些代码。
以Python为例:
42
就是一个合法的表达式。
对这个表达式求值,会得到它自己, 也就是数字42
。
这几乎是世界上最简单的表达式了, 被称为简单值,或字面量。
同样:
"Hello"
也是一个字面量。 对它求值, 会得到字符串"Hello"
。 在许多语言中, 字符串字面量包含在一对双引号中。(Python中单引号也行)
变量
而
age
肯定不是一个字面量。 因为它没有双引号。 求值结果肯定不会是age
这行是什么意思? 不知道, 要取决于age
个东西在运行的时候是否有意义。
例如, 在前面的代码中, 如果写了age=38
,(顺便说一下,这是李老师写这篇文章时的年龄,很香不是吗),那对age
求值就会得到38
。
测一测
改正下面python代码的错误, 让它能礼貌的和李老师打招呼。(提示: 用+
可以连接两个字符串。)
name = 李老师
print("name, 你好呀!")