Python 如何取 array 的值
在 Python 中,我们可以使用多种方法来获取数组(array)的值。数组是一种存储相同类型数据的集合,可以通过索引访问和操作其中的元素。本文将介绍常用的几种方法,并通过一个具体的问题来演示如何使用这些方法来获取数组的值。
问题描述
假设有一个由学生姓名和分数组成的数组,我们需要根据姓名来获取对应学生的分数。具体来说,我们希望实现以下功能:
- 创建一个包含学生姓名和分数的数组;
- 提供一个学生姓名,返回该学生的分数。
解决方案
1. 创建数组
首先,我们需要创建一个包含学生姓名和分数的数组。可以使用 Python 中的列表(List)来作为数组的数据结构。
students = [
['Alice', 85],
['Bob', 90],
['Charlie', 75],
['David', 95]
]
上述代码创建了一个包含四个学生姓名和分数的数组。每个学生都表示为一个包含两个元素的列表,第一个元素是姓名,第二个元素是分数。
2. 根据姓名获取分数
接下来,我们需要实现一个函数,根据学生姓名来获取对应的分数。
def get_score(students, name):
for student in students:
if student[0] == name:
return student[1]
return None
上述代码定义了一个名为 get_score
的函数,该函数接受两个参数:students
表示学生数组,name
表示要查询的学生姓名。函数通过遍历数组中的每个学生,判断学生的姓名是否与要查询的姓名相等,如果相等则返回该学生的分数,否则返回 None
表示未找到。
3. 调用函数获取分数
现在,我们可以调用 get_score
函数来获取学生的分数了。
student_name = 'Bob'
score = get_score(students, student_name)
if score is not None:
print(f"The score of {student_name} is {score}.")
else:
print(f"Cannot find the score of {student_name}.")
上述代码调用了 get_score
函数,并将返回的分数存储在变量 score
中。如果找到了分数,则打印学生姓名和分数;否则,打印未找到的提示信息。
4. 完整示例代码
下面是完整的示例代码:
students = [
['Alice', 85],
['Bob', 90],
['Charlie', 75],
['David', 95]
]
def get_score(students, name):
for student in students:
if student[0] == name:
return student[1]
return None
student_name = 'Bob'
score = get_score(students, student_name)
if score is not None:
print(f"The score of {student_name} is {score}.")
else:
print(f"Cannot find the score of {student_name}.")
运行以上代码,将输出:
The score of Bob is 90.
关系图
下面是学生姓名和分数的数组的关系图:
erDiagram
STUDENTS ||--o{ SCORES : has
STUDENTS {
string name
}
SCORES {
int score
}
上述关系图使用了 Mermaid 语法的 erDiagram 标识。
甘特图
下面是解决问题的过程的甘特图:
gantt
title Python 如何取 array 的值
section 创建数组
创建: 2022-06-01, 1d
section 根据姓名获取分数
实现函数: 2022-06-02, 2d
section 调用函数获取分数
调用函数: 2022-06-04, 1d
section 完整示例代码
编写代码: 2022-06-05, 1d
运行代码: 2022-06-06, 1d
上述甘特图使用了 Mermaid 语法的 gantt 标识,展示了解决问题的过程及时间安排。
总结
本文介绍