从文件读取数据后,存入字典,姓名作为字典的键,成绩作为字典的值。然后输入姓名,查询相应的成绩,查不到,显示"未找到"
# 打开文件,读取数据
with open('data.txt', 'r') as f:
data = f.readlines()
# 创建空字典
scores = {}
# 将数据存入字典
for line in data:
name, score = line.strip().split(',')
scores[name] = int(score)
# 输入姓名,查询成绩
name = input('请输入姓名:')
if name in scores:
print(f'{name}的成绩是:{scores[name]}')
else:
print('未找到')
不知道你这个问题是否已经解决, 如果还没有解决的话:作为有10年软件测试工作经验的软件测试工程师,给大家分享我平时常用的关于软件测试的一些网站(排名不分先后):
可以通过以下步骤实现从文件中读取数据后存入字典,并利用姓名作为键值,成绩作为对应的值来查询成绩信息:
with open(filename, 'r') as f:
的形式,读取文件中每一行的数据。strip()
方法去掉前后的空格。split()
方法分离姓名和成绩,存入一个列表中。下面是具体实现的代码:
# 定义空字典
score_dict = {}
# 打开文件并读取每行数据
with open('data.txt', 'r') as f:
for line in f:
# 去掉前后空格,并使用split()方法分离姓名和成绩
name, score = line.strip().split()
# 将姓名作为键,成绩作为值,存入字典中
score_dict[name] = int(score)
# 关闭文件
f.close()
# 实现查询函数
def query_score(name):
if name in score_dict:
print("{}的成绩为: {}".format(name, score_dict[name]))
else:
print("不存在名为{}的学生,请重新输入!".format(name))
# 测试查询函数
query_score('小明') # 输出:小明的成绩为: 80
query_score('小红') # 输出:不存在名为小红的学生,请重新输入!
其中data.txt文件中的数据格式为:
小明 80
小刚 90
小红 78
... ...