设计一个课堂随机点名程序。假设有两个班:1班33位同学,2班35位同学。老师提问时,
时间: 2024-10-07 19:01:33 浏览: 24
设计一个课堂随机点名程序,可以分为以下几个步骤:
1. **数据结构**:首先,需要创建一个数据结构来存储每个班级的学生名单。这可以是一个列表或字典,其中键是学生ID,值是学生的姓名或其他唯一标识符。
```python
class Student:
def __init__(self, id, name):
self.id = id
self.name = name
class ClassRoom:
def __init__(self, class_id, students):
self.class_id = class_id
self.students = students
```
2. **生成随机选择**:为了随机选择学生,可以在`ClassRoom`类中添加一个方法,比如`random_pick_student()`,它会从学生列表中随机选取一位。
```python
import random
def random_pick_student(self):
return random.choice(self.students)
```
3. **主程序交互**:创建一个`Teacher`类,该类有一个方法`ask_question()`, 这时调用相应班级的`random_pick_student()`方法,然后打印出被选中的学生的信息。
```python
class Teacher:
def ask_question(self, classroom):
selected_student = classroom.random_pick_student()
print(f"在{classroom.class_id}班,本次提问的是学生{selected_student.name},ID号:{selected_student.id}")
```
4. **使用示例**:
- 初始化两个班级的数据:
```python
student_list_1 = [Student(i+1, f"学生{i+1}") for i in range(33)]
student_list_2 = [Student(i+34, f"学生{i+34}") for i in range(35)]
room_1 = ClassRoom(1, student_list_1)
room_2 = ClassRoom(2, student_list_2)
```
- 老师提问:
```python
teacher = Teacher()
teacher.ask_question(room_1) # 对于1班
teacher.ask_question(room_2)
阅读全文