7.0 KiB
Python 变量:存储信息以备后用
在上一节中,我们通过利用REPL将 Python 用作计算器。存储这些计算的结果不是很好吗?为此,我们使用 Python 变量。在本文中,您将学习什么是变量以及如何声明变量。我们还将了解创建变量的规则和最佳实践。
目录
什么是 Python 变量?
让我们从更正式地定义什么是变量开始:
Variable
A variable is used to store information that can be referenced later on.
所以变量就是我们用来命名结果的东西,比如说,我们做的一个计算。或者,换句话说,我们可以将计算结果赋给一个变量。我们可以创造无限量的变量;我们只需要确保给它们起一个唯一的名字。
声明一个 Python 变量
我们将在 REPL 中创建一个名为result的 Python 变量(正式名称为声明变量)。但是在我们这样做之前,我们将尝试看看 Python 是否已经知道结果是什么:
>>> result
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'result' is not defined
这是 Python 让您了解错误的方式。忽略前两行,关注实际的错误。Python 报道:name 'result' is not defined。如果你知道去哪里找,Python 错误往往会很有帮助。所以我想给你看一个。最终,您将需要自己编写代码,不幸的是,出错是这项工作的一大部分。能够破译错误将是一个有用的技能!
现在让我们声明变量名result并再次尝试:
>>> result = 3 * 5
>>> result
15
这是逐步发生的事情:
- Python 看到一个所谓的赋值:我们把 3 * 5 的结果赋给一个叫做
result的变量。赋值是用“=”字符完成的,这个字符方便地称为“is”。所以我们只是告诉 Python:我声明result是表达式 3 * 5 的结果。 - 接下来,我们输入
result。 - Python 并不认为这是一个命令,所以它尝试看看是否有一个同名的变量。有,我们给它分配了 15 分。因此,这一行的结果是数字 15,显示在屏幕上。
变量命名
在本例中,我们选择了通用名称result,但是您可以选择任何您认为合适的名称。作为一般规则,总是选择一个最能描述其内容的变量名。这种做法使您的代码可读性更强,更容易理解。例如,如果我们在这里计算购物车的总价,一个好的名字应该是shopping_cart_total。
不要吝啬变量名中的字符数。最好使用像shopping_cart_total这样清晰易读的名字,而不是像sct这样的缩写。您很快就会了解到,一个好的代码编辑器会自动完成诸如变量名之类的事情,所以您不必完全键入它们,如果这是您所担心的。
在表达式中使用变量
Python 变量是该语言的重要组成部分,因为您也可以在其他表达式中使用它们:
>>> 4 * result
60
>>> result - result
0
>>> _
我在没有解释表达式是什么的情况下使用了表达式这个词,让我们来修正一下:
Expression
An expression is anything that Python can evaluate to a value
这些都是有效的表达式,因为 Python 可以对它们求值:
# Evaluates to 9:
3 * 3
# Evaluates to 19 if the result is 15:
result + 4
# Simply evaluates to 2:
2
你在表情上面看到的,叫做注释。任何跟在散列符号(#)后面的东西都被视为一个 Python 注释,并被 Python 解释器忽略。
变量类型
顺便说一下,赋给变量的值不一定是数字。Python 除了数字还有几个数据类型,它们都可以是表达式的结果(值)。一种这样的数据类型是 Python 字符串,这也是本教程下一篇文章的主题!但是也有其他的,像布尔和元组。
Python 有一个名为type()的内置函数,我们可以用它来确定变量或表达式类型。以下是一些例子:
>>> my_number = 4
>>> type(my_number)
<class 'int'>
>>> my_string = 'Hello'
>>> type(my_string)
<class 'str'>
首先,我们创建了一个值为 4 的变量。当被问到时,Python 告诉我们这个变量属于 int 类,这是整数的缩写。如果你愿意的话,可以通过链接获得关于整数的更全面的解释。
接下来,我们创建一个字符串。当被问到时,Python 确实告诉我们它属于 str 类,string 的缩写。差不多是时候学习更多关于 Python 字符串的知识了,但是我想先讨论最后一个话题。
有效的 Python 变量名
变量名中不允许使用某些字符;我们需要遵守几条规则。让我们从可以出现在变量名中的有效字符的完整列表开始:
- 小写和大写字母:a-z 和 A-Z
- 数字:0-9
- 下划线:_
此外,还有以下两条规则:
- 变量名必须以字母或下划线字符开头,不能以数字开头。
- 名称区分大小写
下面是一些有效的变量名:
- name_1,
- 姓名 _2,
- _ 数据库 _ 连接
这些是无效名称:
- 1 托曼尼(不要以数字开头)
- 我的号码(-不允许)
- 我的号码(不允许有空格)
由于区分大小写,这些变量不同于:
- 购物车总计
- 购物车总计
关于骆驼案的一个注记
这是为那些来自另一种编程语言的人准备的,比如 C#或 Java。许多编程语言利用 camel-case 来命名变量。使用 camel-case,我们使用大写字母来更清楚地分隔单词。
在 Python 中,我们可以使用 camel-case,但是我们更喜欢使用下划线作为变量名,而 camel-case 是类名的标准。所以我们 Pythonistas 不用shoppingCartTotal,而是用shopping_cart_total。然而,我们确实对类名使用了 camel-case,您很快就会了解到。
继续学习
我们见过数字,我们知道如何在变量中存储数字。但是文字呢?进入下一部分,学习关于 Python 字符串的所有知识。