介绍
在本实验中,你将探索 Python 的基本数据类型和运算符。基于你在上一个实验中学到的知识,你将学习整数、浮点数、字符串和布尔值。你还将练习使用各种运算符进行计算和比较。这种动手实践将加深你对 Python 核心概念的理解,并为你完成更高级的编程任务做好准备。
在本实验中,你将探索 Python 的基本数据类型和运算符。基于你在上一个实验中学到的知识,你将学习整数、浮点数、字符串和布尔值。你还将练习使用各种运算符进行计算和比较。这种动手实践将加深你对 Python 核心概念的理解,并为你完成更高级的编程任务做好准备。
在这一步骤中,你将使用 Python 中的两种主要数值数据类型:整数和浮点数。
在终端中输入以下命令以打开 Python 解释器:
python
你应该会看到 Python 提示符(>>>),这表示你现在处于 Python 交互式 shell 中。
让我们从探索整数开始。在 Python 解释器中输入以下内容:
>>> age = 25
>>> print(f"I am {age} years old.")
I am 25 years old.
>>> type(age)
<class 'int'>
在这里,age
是一个整数变量。type()
函数确认它是一个 int
(整数)数据类型。整数是没有小数点的整数。
现在,让我们使用浮点数:
>>> height = 1.75
>>> print(f"My height is {height} meters.")
My height is 1.75 meters.
>>> type(height)
<class 'float'>
height
是一个浮点数,由 Python 中的 float
数据类型表示。浮点数用于表示带有小数点的数字。
让我们使用这些数值类型进行计算:
>>> weight = 70 ## 首先定义 weight
>>> bmi = weight / (height ** 2)
>>> print(f"My BMI is {bmi:.2f}")
My BMI is 22.86
在这里,我们首先定义了 weight
。**
运算符用于指数运算(求幂)。f-string 中的 .2f
将输出格式化为仅显示两位小数。
#
在 Python 中用于注释。注释会被解释器忽略,用于记录代码。
如果你犯了错误或想尝试不同的值,不用担心!你可以简单地重新定义变量并再次运行计算。
在这一步骤中,你将学习如何使用字符串,字符串是 Python 中的字符序列。
在 Python 解释器中创建一个字符串变量:
>>> name = "Alice"
>>> print(f"Hello, {name}!")
Hello, Alice!
>>> type(name)
<class 'str'>
str
数据类型表示 Python 中的字符串。字符串可以用单引号('')或双引号("")括起来。
字符串支持多种操作。让我们探索一些操作:
>>> ## 字符串连接(拼接字符串)
>>> first_name = "John"
>>> last_name = "Doe"
>>> full_name = first_name + " " + last_name
>>> print(full_name)
John Doe
>>> ## 字符串重复
>>> echo = "Hello " * 3
>>> print(echo)
Hello Hello Hello
>>> ## 字符串长度
>>> print(len(full_name))
8
>>> ## 访问字符串中的字符
>>> print(full_name[0]) ## 第一个字符(索引 0)
J
>>> print(full_name[-1]) ## 最后一个字符
e
记住,在 Python 中,索引从 0 开始,因此第一个字符的索引是 0。
Python 中的字符串是不可变的,这意味着你不能更改单个字符。但是,你可以基于现有字符串创建新的字符串:
>>> uppercase_name = full_name.upper()
>>> print(uppercase_name)
JOHN DOE
>>> lowercase_name = full_name.lower()
>>> print(lowercase_name)
john doe
这些方法不会改变原始字符串,而是创建新的字符串。
在这一步骤中,你将学习布尔值以及如何在 Python 中使用比较运算符。
Python 中的布尔值要么是 True
,要么是 False
。让我们创建一些布尔变量:
>>> is_student = True
>>> is_employed = False
>>> print(f"Is a student: {is_student}")
Is a student: True
>>> print(f"Is employed: {is_employed}")
Is employed: False
>>> type(is_student)
<class 'bool'>
布尔值通常用于条件语句和循环中,你将在未来的实验中学习这些内容。
比较运算符返回布尔值。让我们探索一些比较操作:
>>> x = 5
>>> y = 10
>>> print(x < y) ## 小于
True
>>> print(x > y) ## 大于
False
>>> print(x == y) ## 等于
False
>>> print(x != y) ## 不等于
True
>>> print(x <= y) ## 小于或等于
True
>>> print(x >= y) ## 大于或等于
False
这些运算符比较值并根据比较结果返回 True
或 False
。
你也可以将比较运算符用于其他数据类型:
>>> name1 = "Alice"
>>> name2 = "Bob"
>>> print(name1 < name2) ## 字母顺序比较
True
>>> print(len(name1) == len(name2)) ## 比较字符串长度
False
在比较字符串时,Python 使用字典顺序(lexicographic ordering)。
布尔运算符(and
、or
、not
)可以用于组合布尔值:
>>> a = True
>>> b = False
>>> print(a and b) ## 如果两者都为 True,则返回 True
False
>>> print(a or b) ## 如果至少一个为 True,则返回 True
True
>>> print(not a) ## 取反
False
这些运算符在程序中用于创建复杂的条件非常有用。
在这一步骤中,你将学习如何在 Python 中转换不同的数据类型。
有时你需要将一种数据类型转换为另一种。Python 提供了内置函数来实现这一目的。让我们从将字符串转换为数字开始:
>>> ## 将字符串转换为整数
>>> age_str = "25"
>>> age_int = int(age_str)
>>> print(f"Age: {age_int}")
Age: 25
>>> print(type(age_int))
<class 'int'>
>>> ## 将字符串转换为浮点数
>>> height_str = "1.75"
>>> height_float = float(height_str)
>>> print(f"Height: {height_float} meters")
Height: 1.75 meters
>>> print(type(height_float))
<class 'float'>
int()
和 float()
函数分别将字符串转换为整数和浮点数。注意:如果字符串无法转换,你会得到一个错误。
你也可以将数字转换为字符串:
>>> ## 将整数转换为字符串
>>> count = 42
>>> count_str = str(count)
>>> print(f"The count is: {count_str}")
The count is: 42
>>> print(type(count_str))
<class 'str'>
>>> ## 将浮点数转换为字符串
>>> pi = 3.14159
>>> pi_str = str(pi)
>>> print(f"Pi is approximately {pi_str}")
Pi is approximately 3.14159
>>> print(type(pi_str))
<class 'str'>
str()
函数可以将大多数 Python 对象转换为字符串。
布尔值可以与其他类型相互转换:
>>> ## 转换为布尔值
>>> print(bool(1)) ## 非零数字为 True
True
>>> print(bool(0)) ## 零为 False
False
>>> print(bool("")) ## 空字符串为 False
False
>>> print(bool("Hello")) ## 非空字符串为 True
True
>>> ## 将布尔值转换为整数
>>> true_int = int(True)
>>> false_int = int(False)
>>> print(f"True as integer: {true_int}")
True as integer: 1
>>> print(f"False as integer: {false_int}")
False as integer: 0
在 Python 中,任何非零数字或非空字符串在转换为布尔值时都被视为 True
。
在这最后一步中,你将创建一个简单的程序,利用你在本实验中学到的概念。
通过输入 exit()
或按下 Ctrl+D 退出 Python 解释器。
切换到 LabEx VM 中的 WebIDE
标签页。WebIDE 是一个在线代码编辑器,允许你直接在浏览器中编写和运行 Python 脚本。它适用于较长的脚本和项目。
使用以下命令在 ~/project
目录中创建一个名为 data_types_practice.py
的新文件:
touch ~/project/data_types_practice.py
点击新创建的文件以在编辑器中打开它。
将以下代码复制并粘贴到文件中:
## 数据类型和运算符练习
## 获取用户输入
name = input("Enter your name: ")
age_str = input("Enter your age: ")
height_str = input("Enter your height in meters: ")
## 将输入转换为适当的类型
age = int(age_str)
height = float(height_str)
## 执行计算
## 你可能需要将年份改为当前年份
birth_year = 2025 - age
is_adult = age >= 18
## 创建输出字符串
output = f"""
Name: {name}
Age: {age}
Height: {height:.2f} meters
Birth Year: {birth_year}
Is Adult: {is_adult}
"""
## 打印结果
print(output)
## 额外功能:字符串操作
uppercase_name = name.upper()
name_length = len(name)
print(f"Your name in uppercase: {uppercase_name}")
print(f"Your name has {name_length} characters")
该程序展示了各种数据类型的使用、类型转换、字符串格式化和基本计算。
保存文件(自动保存已启用)并使用以下命令运行它:
python ~/project/data_types_practice.py
在提示时输入你的信息。你应该会看到类似以下的输出:
Enter your name: Alice
Enter your age: 25
Enter your height in meters: 1.75
Name: Alice
Age: 25
Height: 1.75 meters
Birth Year: 1999
Is Adult: True
Your name in uppercase: ALICE
Your name has 5 characters
如果你在输入数据时出错,你需要重新运行程序。这是一个练习多次运行 Python 脚本并使用不同输入的好机会。
在本实验中,你探索了 Python 的基本数据类型和运算符。你学习了如何使用整数、浮点数、字符串和布尔值。你练习了使用各种运算符进行计算和比较,并获得了类型转换的经验。最后,你将这些概念应用到一个简单的程序中,该程序接收用户输入、处理数据并生成格式化的输出。
这些技能构成了 Python 编程的基础,随着你继续开发更复杂的程序,它们将变得至关重要。请记住定期练习这些概念,以巩固你的理解,并更加熟悉 Python 的语法和数据处理。
在继续学习的过程中,不要犹豫去尝试 Python 解释器。它是一个测试小段代码和理解不同操作如何工作的绝佳工具。如果你遇到任何错误,请仔细阅读错误信息——它们通常会提供关于问题所在以及如何修复的线索。