假设小明是班里的双创委员,需要统计参加活动的同学姓名,请用一个列表存储每次参加活动的同学姓名。输入姓名,能显示该同学是否参加过活动。
时间: 2024-10-21 21:12:47 浏览: 44
可以创建一个Python字典来实现这个功能,其中键是学生的姓名,值是一个集合,表示该学生参加过的所有活动。如果某个学生的名字第一次出现,集合将为空。以下是具体的实现步骤:
```python
# 初始化一个空字典来存储学生及其参与活动的信息
student_activities = {}
def add_student(name):
if name not in student_activities:
student_activities[name] = set()
def check_student(name):
if name in student_activities:
return "学生 {} 参加过活动".format(name)
else:
return "学生 {} 还未参加过活动".format(name)
# 示例操作
add_student("小明") # 小明加入活动记录
add_student("小红")
add_student("小明") # 小明第二次参加活动
print(check_student("小明")) # 输出:学生 小明 参加过活动
print(check_student("小红"))
相关问题
情景:假设小明是班里的双创委员,需要统计参加活动的同学姓名,请用一个列表存储每次参加活动的同学姓名。输入姓名,能显示该同学是否参加过活动。(扩展情景:假设每次活动的学分都一样,如果该同学有参加过活动,能显示获得的总学分。)
在这个情景中,我们可以创建一个Python字典数据结构来存储每个学生及其对应的活动参与记录和学分。字典的键可以是学生的姓名,值是一个嵌套的字典,包含“activity”(表示活动参与情况,如True表示参加,False表示未参加)和“credit”(表示累计学分)。当输入一个学生姓名时,我们可以通过检查字典中是否存在这个姓名来判断其是否参加过活动以及获取累积学分。
以下是简单的实现步骤:
```python
# 初始化空字典来存储学生信息
student_records = {}
# 添加或更新学生参与活动的情况
def add_student_activity(name, attended, credit):
if name in student_records:
student_records[name]["activity"] = attended
student_records[name]["credit"] += credit
else:
student_records[name] = {"activity": attended, "credit": credit}
# 查询学生活动情况
def check_student_activity(name):
return student_records.get(name, {"activity": False, "credit": 0})
# 示例用法
add_student_activity("小明", True, 5) # 小明参加了活动,获得5学分
print(check_student_activity("小明")) # 输出 {'activity': True, 'credit': 5}
```
python编程记录班里五位同学的姓名,性别,年龄,每位同学一行打印输出。
在Python中,你可以使用列表或字典来存储班级同学的信息,并通过for循环逐行打印出来。这里是一个简单的例子,使用字典来存储每个同学的数据:
```python
# 创建一个字典列表来存储同学信息
students = [
{"name": "小明", "gender": "男", "age": 16},
{"name": "小红", "gender": "女", "age": 15},
{"name": "小刚", "gender": "男", "age": 17},
{"name": "小芳", "gender": "女", "age": 16},
{"name": "小李", "gender": "男", "age": 18}
]
# 打印每位同学的信息
for student in students:
print(f"姓名:{student['name']}, 性别:{student['gender']}, 年龄:{student['age']}")
```
每行信息会被格式化成:“姓名:XXX, 性别:XXX, 年龄:XXX”。你可以根据需要调整输出格式。
阅读全文