我目前正在学习JavaScript和Python,目前我正在阅读和编写Python文本文件。目前,我正在尝试:编写一个程序,当指示这样做时,应该创建一个文件,其中包含需要重新坐下的学生列表以及他们需要得分的标记数量,以获得至少85 。
我已经编写了代码,显示学生是否达到了85分的最低分数,如果他们还没有,他们还需要多少分数。但现在我被卡住了。非常感谢任何帮助,谢谢!
的Python:
def menu():
target = 85
with open('homework.txt','r') as a_file:
for l in a_file:
name, number = l.split(',')
number = int(number)
print(name + ': ' + ('passed' if number>=target else str(target - number)))
input()
文字档案:
emma smith,79
noah jones,32
olivia williams,26
liam taylor,91
sophia green,80
mason brown,98
答案 0 :(得分:1)
您只需打开一个文件来编写打印件:
def menu():
target = 85
results = open("results.txt",'w')
with open('homework.txt','r') as a_file:
for l in a_file:
name, number = l.split(',')
number = int(number)
results.write(name + ': ' + ('passed' if number>=target else str(target - number)) + '\n')
input()
答案 1 :(得分:0)
听起来您只想将程序的结果传递到另一个文本文件中。
python file.py > results.txt
应该可以解决问题。
(我没有检查你的算法,因为你提到它已经做了你想做的事情)
答案 2 :(得分:0)
在我看来,你正在努力实现以下目标:
reSit = input("Enter file name for the re-sit: ")
fh = open(reSit ,'w')
fh.write(<a fails student> + '\n')
如果要附加到fh = open(reSit ,'a')
答案 3 :(得分:0)
我想这可能会做你需要的......
def menu():
out_file = open("results.txt", "w")
target = 85
with open("homework.txt", "r") as a_file:
for l in a_file:
name, number = l.split(",")
number = int(number)
out_file.write("{},{}\n".format(name, ('passed' if number>=target else str(target - number))))
menu()