Python如何按行添加元素解决方案

在Python中,我们经常会遇到需要按行添加元素的问题,比如读取文件并逐行处理数据、将用户输入的文本按行存储等等。本文将介绍如何使用Python来按行添加元素,并以一个具体的问题为例进行演示。

问题描述

我们有一个名为Student的类,表示学生信息,包括学生的姓名和年龄。我们希望能够从用户输入中逐行添加学生信息,并将其存储在一个列表中。

解决方案

首先,我们需要定义Student类,如下所示:

class Student:
    def __init__(self, name, age):
        self.name = name
        self.age = age
  • 1.
  • 2.
  • 3.
  • 4.

接下来,我们可以编写一个函数来实现逐行添加学生信息的功能:

def add_student():
    students = []
    
    while True:
        name = input("请输入学生姓名(输入exit退出):")
        if name == 'exit':
            break
        
        age = input("请输入学生年龄:")
        student = Student(name, age)
        students.append(student)
    
    return students
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

在这个函数中,我们首先创建一个空列表students用来存储学生信息。然后使用一个无限循环,每次提示用户输入学生的姓名和年龄,创建一个Student对象并将其添加到列表中。如果用户输入exit,则退出循环。

最后,我们可以调用这个函数来进行测试:

students = add_student()

for student in students:
    print(f"学生姓名:{student.name},学生年龄:{student.age}")
  • 1.
  • 2.
  • 3.
  • 4.

类图

下面是Student类的类图:

Student - name: str - age: int +__init__(self, name, age)

饼状图

下面是根据用户输入的学生信息生成的饼状图:

学生年龄分布 60% 40% 学生年龄分布 18-20 21-23

结论

本文介绍了如何使用Python按行添加元素的解决方案,并通过一个具体的问题演示了如何实现。通过这种方式,我们可以方便地处理需要逐行输入的场景,提高了代码的灵活性和可读性。希望本文对你有所帮助!