<p>默认情况下,Python将输入作为字符串,因此需要将其转换为int
您需要从函数中返回一些内容,否则convertscore(line)将始终返回null。下面将在Python2.7中使用。请检查一下</p>
<pre><code>def convertscore(score):
grade = ""
if score >=101:
grade = "Score is over 100%. Are you sure this is right? \n"
grade += "A"
elif score >=90:
grade = "A"
elif score >=80 <=89:
grade = "B"
elif score >=70 <=79:
grade = "C"
elif score >= 60 <=69:
grade = "D"
elif score >=0 <=59:
grade = "F"
elif score < 0:
grade = "Score cannot be less than zero."
else:
grade = "Unable to convert score."
return grade
print("This program creates a file of letter grades from a file of scores on a 100-point scale.")
#print()
#get the file names
infileName = input("What file are the raw scores in? ")
outfileName = input("What file should the letter grades go in? ")
#open the files
infile = open(infileName, 'r')
outfile = open(outfileName, 'w')
#process each line of the output file
for line in infile:
#write to output file
outfile.write(convertscore(int(line)))
outfile.write("\n")
#close both files
infile.close()
outfile.close()
#print()
print("Letter grades were saved to", outfileName)
</code></pre>