用python运用panda的read_excel函数读取xls文件,并使用字典存储学生成绩数据,输入学号查询成绩并计算排名的代码
时间: 2024-12-11 14:21:57 浏览: 14
python read excel.zip_excel读取_python excel_python_read_excel_pyt
在Python中,我们可以使用pandas库中的`read_excel`函数来读取.xls文件,然后将数据转换成字典,方便后续查找和处理。以下是一个简单的示例:
```python
import pandas as pd
# 读取Excel文件
df = pd.read_excel('your_file.xls') # 将'your_file.xls'替换为实际的文件路径
# 将DataFrame转换为字典,键是学号,值是成绩列表
scores_dict = df.set_index('学号')['成绩'].to_dict() # 假设'学号'列是索引,'成绩'列是我们关心的成绩
def search_and_rank(student_id):
"""
输入学号,查询成绩并返回排名
"""
if student_id in scores_dict:
score = scores_dict[student_id]
# 对成绩降序排列
sorted_scores = sorted(scores_dict.values(), reverse=True)
rank = len([s for s in sorted_scores if s >= score]) + 1 # 如果当前成绩等于最高分,排名从一算起
return {'学号': student_id, '成绩': score, '排名': rank}
else:
return None # 返回None表示未找到该学生信息
# 使用示例
student_id_to_check = input("请输入你要查询的学生学号:")
result = search_and_rank(student_id_to_check)
if result is not None:
print(f"学号:{result['学号']}, 成绩:{result['成绩']}, 排名:{result['排名']}")
else:
print("找不到该学生的成绩信息。")
```
阅读全文