检查下面代码正确性s = "150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管" # 将字符串转为字典 course_dict = {} for item in s.split(";"): student_info = item.split(",") course_dict[student_info[1]] = {"id": student_info[0], "major": student_info[2]} # 查询选课情况 name = input("请输入学生姓名:") if name in course_dict: print("{}已成功选课".format(name)) else: print("{}未成功选课".format(name)) # 查询学生信息 name = input("请输入学生姓名:") if name in course_dict: print("学号:{}\n姓名:{}\n专业:{}".format(course_dict[name]["id"], name, course_dict[name]["major"])) else: print("未找到{}的信息".format(name))
时间: 2023-07-13 08:06:47 浏览: 278
代码基本正确,但是在字符串中的分隔符应该为中文逗号(",")而不是英文逗号(",")。下面是修改后的代码:
```python
s = "150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管"
# 将字符串转为字典
course_dict = {}
for item in s.split(";"):
student_info = item.split(",")
course_dict[student_info[1]] = {"id": student_info[0], "major": student_info[2]}
# 查询选课情况
name = input("请输入学生姓名:")
if name in course_dict:
print("{}已成功选课".format(name))
else:
print("{}未成功选课".format(name))
# 查询学生信息
name = input("请输入学生姓名:")
if name in course_dict:
print("学号:{}\n姓名:{}\n专业:{}".format(course_dict[name]["id"], name, course_dict[name]["major"]))
else:
print("未找到{}的信息".format(name))
```
相关问题
将这个字符转换成列表s = "150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管"
s = "150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管"
lst = s.split(";")
result = []
for item in lst:
temp = item.split(",")
result.append(temp)
print(result)
s="150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管" l=s.split() name=input("请输入想要查询的学生姓名:",) for a in l: str(a) if name==a: print("该学生选课成功") else: print("该学生选课失败")
代码存在一些错误,应该修改为以下形式:
```
s = "150230,刘江,交通;170203,周永,信管;170201,林洋,信管;160315,何东,机械;150227,章斌,交通;160305,符扬,机械;150216,祁东,交通;170110,邱凯,信管"
l = s.split(";")
name = input("请输入想要查询的学生姓名:")
for a in l:
if name in a:
print("该学生选课成功")
break
else:
print("该学生选课失败")
```
修改后,代码可以正确地判断输入的学生姓名是否在选课列表中。
阅读全文