如何编辑Python代码以仅返回所需答案?
我是一名通过在线教科书学习python的初学者,以下是其中一个练习: 编写一个程序来提示输入文件名,然后通读 归档并查找表单中的行: X-DSPAM-置信度:0.8475 当您遇到以“X-DSPAM-Confidence”开头的行时:“拉动” 分隔行以提取行上的浮点数。计数 然后计算垃圾邮件可信度值的总和 从这些线。当到达文件末尾时,打印出 平均垃圾邮件置信度 输入文件名:mbox.txt 平均垃圾邮件可信度:0.894128046745 输入文件名:mbox-short.txt 平均垃圾邮件可信度:0.750718518519 这是我迄今为止编写的代码:如何编辑Python代码以仅返回所需答案?,python,python-3.x,Python,Python 3.x,我是一名通过在线教科书学习python的初学者,以下是其中一个练习: 编写一个程序来提示输入文件名,然后通读 归档并查找表单中的行: X-DSPAM-置信度:0.8475 当您遇到以“X-DSPAM-Confidence”开头的行时:“拉动” 分隔行以提取行上的浮点数。计数 然后计算垃圾邮件可信度值的总和 从这些线。当到达文件末尾时,打印出 平均垃圾邮件置信度 输入文件名:mbox.txt 平均垃圾邮件可信度:0.894128046745 输入文件名:mbox-short.txt 平均垃圾邮件可
fname = input('Enter file name: ')
count = 0
total = 0
try:
fhand = open(fname)
for line in fhand:
if line.strip().startswith('X-DSPAM-Confidence:'):
count = count + 1
flt = float(line.split(':')[1])
total = total + flt
print(total / count)
except:
print('Bad file name: ', fname)
输出是一个长长的数字列表,尽管列表中的最后一个数字为“mbox.txt”和“mbox short.txt”提供了正确的答案。我需要对此代码进行哪些更改才能使其仅打印正确答案?仅在循环完成后打印
fname = input('Enter file name: ')
count = 0
total = 0
try:
fhand = open(fname)
for line in fhand:
if line.strip().startswith('X-DSPAM-Confidence:'):
count = count + 1
flt = float(line.split(':')[1])
total = total + flt
print(total / count)
except:
print('Bad file name: ', fname)
如果您只想打印最后一项,请将
打印
移动到循环后。谢谢。我完全错过了。