请编写程序,用户输入姓名和分数,将输入的记录加进文本文件并显示当前的最高分的姓名。(文本文件内容如下)。王益诚,91~李裕,89张洪源,79马柏源,77叶维鑫,68
时间: 2023-12-07 12:05:56 浏览: 117
好的,以下是Python的代码实现:
```python
# 读取文件中的记录
with open('scores.txt', 'r') as f:
records = f.readlines()
# 提取每个人的姓名和分数
scores = {}
for record in records:
name, score = record.split(',')
score = int(score[:-1]) # 去掉分数后面的换行符
scores[name] = score
# 获取用户输入的姓名和分数
name = input('请输入姓名:')
score = int(input('请输入分数:'))
# 将新的记录加入文件
with open('scores.txt', 'a') as f:
f.write(f'{name},{score}\n')
# 显示当前最高分的姓名
max_score = max(scores.values())
for name, score in scores.items():
if score == max_score:
print(f'当前最高分的姓名是{name}')
break
```
注:为了让程序更加健壮,应该添加输入格式的检查,比如分数需要是数字等。
相关问题
请编写程序,用户输入姓名和分数,将输入的记录加进文本文件 并显示当前的最高分的姓名。(文本文件内容如下). 王益诚914
可以使用 Python 语言来实现。假设文本文件名为 `scores.txt`,代码如下:
```python
# 获取用户输入
name = input("请输入姓名:")
score = input("请输入分数:")
# 将记录写入文本文件
with open("scores.txt", "a") as f:
f.write(name + " " + score + "\n")
# 读取文本文件中所有记录,找到最高分
max_score = 0
max_name = ""
with open("scores.txt", "r") as f:
for line in f:
parts = line.strip().split()
if len(parts) == 2:
cur_score = int(parts[1])
if cur_score > max_score:
max_score = cur_score
max_name = parts[0]
# 显示最高分的姓名
if max_name:
print("当前最高分的姓名是:" + max_name)
else:
print("当前还没有记录")
```
运行以上代码,用户输入姓名和分数后,程序将会将记录添加到 `scores.txt` 文件中,并显示当前最高分的姓名。如果文件中还没有记录,则输出“当前还没有记录”。注意,代码中假设每一行记录都是由姓名和分数两个部分组成,用空格分隔。如果实际情况不同,需要根据实际情况进行修改。
请编写程序,用户输入姓名和分数,将输入的记录加进文本文件,并显示当前的最高分的姓名。
好的,以下是一个Python的示例程序,实现了您的要求:
```python
# 打开文件,如果不存在则创建
with open('scores.txt', 'a+') as f:
# 让用户输入姓名和分数
name = input('请输入姓名:')
score = input('请输入分数:')
# 将记录加入文件中
f.write(name + ',' + score + '\n')
# 回到文件开头,读取所有记录
f.seek(0)
records = f.readlines()
# 初始化最高分和最高分姓名
max_score = 0
max_name = None
# 遍历所有记录,找出最高分和姓名
for record in records:
name, score = record.strip().split(',')
score = int(score)
if score > max_score:
max_score = score
max_name = name
# 显示最高分的姓名
print('当前最高分的姓名是:', max_name)
```
请注意,这里使用了`strip()`函数来去除每行记录的首尾空格,以及`split()`函数来将每行记录按照逗号分隔成姓名和分数两部分。同时,由于文件可能已经存在了一些记录,因此我们在读取文件时需要回到文件开头,否则可能会读取不到之前已经写入的记录。
阅读全文