geekdoc-python-zh/docs/pythonland/07.md

7.0 KiB
Raw Permalink Blame History

Python 变量:存储信息以备后用

原文:https://python.land/introduction-to-python/variable

在上一节中,我们通过利用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 字符串的所有知识。