跳转到主要内容
模块 1 · 第 1 课(共 4)课程中的1/36~10 min
模块课程(1/4)

变量和类型

在 Python 中,变量只是我们绑定值的名称。 您不需要像 JavaScript 中那样使用关键字来声明它:只需 使用 = 符号为其分配一些内容。

Python
saluto = "Ciao, mondo!"
anni = 30
pi_greco = 3.14
attivo = True

从那一刻起,每次你写 saluto Python 都会替换它 带有字符串 "Ciao, mondo!"。

您总会遇到的内置类型

您在第一周将使用的五种基本类型是:

  • int — 整数,没有大小限制:42、-7、1_000_000。
  • float — 带小数点的数字:3.14、-0.5、2e10。
  • str — 文本,用单引号或双引号括起来:"ciao"、'mondo'。
  • bool — 真值:True 或 False (大写!)。
  • NoneType — 它唯一的实例是 None,相当于“无值”。

您始终可以使用 type(...) 函数询问值的类型:

Python
type(42)        # <class 'int'>
type(3.14)      # <class 'float'>
type("ciao")    # <class 'str'>
type(True)      # <class 'bool'>
type(None)      # <class 'NoneType'>

重新分配和动态类型

Python 是动态类型:同一个变量可以指向 不同类型值的时间。滥用它不是一个好习惯,但它是 法律:

Python
x = 10        # ora x è int
x = "dieci"   # ora x è str

显示最后一个表达式

在我们的练习中(以及在 Playground 中),块的最后一个表达式 被捕获为“返回值”并显示在输出面板旁边, REPL 风格。所以你可以简单地将变量的名称写为最后一个 行来显示其值。

约定和强类型

Python 是一种强类型语言:它不会在不兼容类型之间执行隐式类型转换。例如,对字符串和整数求和 ("Years: " + 30) 将引发 TypeError。为此,您必须使用 str(30) 将数字显式转换为字符串。 此外,Python 中的变量是对内存中对象的引用:当您编写 a = 5 ,然后编写 b = a 时,两个变量都指向内存中的同一个整数。

自己尝试一下

锻炼#python.m1.l1.e1
尝试:0加载中...

创建一个变量“greeting”,其值为“Ciao,mondo!”然后将 `greeting` 计算为最后一个表达式。

正在加载编辑器...
显示提示

在 Python 中,你不需要关键字:只需“name = value”。

3 次尝试后可用的解决方案

复习练习

锻炼#python.m1.l1.e2
尝试:0加载中...

创建一个变量“age_type”,其中包含值 30 的类型(提示:使用 type 函数)。

正在加载编辑器...
显示提示

type(30) 返回 <class 'int'>。

3 次尝试后可用的解决方案

额外的挑战

锻炼#python.m1.l1.e3
尝试:0加载中...

Create a variable `height` with the float value `1.75`. Next, retrieve its type and assign it to the variable `height_type`. Finally, evaluate `height_type`.

正在加载编辑器...
显示提示

使用 type(height) 检索浮点数的类型并将其分配给 height_type。

3 次尝试后可用的解决方案