用Python写一个 1.已知字符串s="150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管",存放了某一门公选课的选课信息,包括学生的学号(固定长度为6位)、姓名和专业。试编写程序,实现以下功能 内容演练 (1)根据用户输入的学生姓名对该学生是否已成功选课进行查询(不考虑重名等特殊情况),并将结果输出。 (2)根据用户输入的学生姓名查询学生的相关信息(包括学号、姓名和专业),不考虑重名等特殊情况。
时间: 2024-03-13 22:44:45 浏览: 108
可以按照以下方式实现:
```python
s = "150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管"
# 将字符串 s 按照 ';' 分割成多个信息
info_list = s.split(';')
# 查询学生是否已成功选课
def search_course(name):
for info in info_list:
if name in info:
return True
return False
# 查询学生的相关信息
def search_info(name):
for info in info_list:
if name in info:
student_info = info.split(',')
return f"学号:{student_info[0]},姓名:{student_info[1]},专业:{student_info[2]}"
return "未找到相关信息"
# 测试
name = input("请输入学生姓名:")
if search_course(name):
print(f"{name}已成功选课")
else:
print(f"{name}未成功选课")
print(search_info(name))
```
可以通过 `search_course` 和 `search_info` 函数实现对学生信息的查询,其中 `search_course` 函数返回布尔值表示学生是否已成功选课,`search_info` 函数返回字符串表示学生的相关信息。在程序中使用了 `split` 函数将字符串按照 ';' 分割成多个信息,再使用 `split` 函数将每个信息按照 ',' 分割成学号、姓名和专业三个部分。最后,根据用户输入的学生姓名调用相应的函数进行查询,并输出结果。
阅读全文