【发布时间】:2013-04-29 01:09:52
【问题描述】:
Python 3.x 我试图从一个名为 numbers.txt 的文件中读取。里面有几行数字。我需要打印总数和平均值。除此之外,我还需要对 IOerror 和 ValueError 使用异常处理。
提前谢谢你。我知道有这样的问题,但建议出错了。
def main():
total = 0.0
length = 0.0
average = 0.0
try:
filename = raw_input('Enter a file name: ')
infile = open(filename, 'r')
for line in infile:
print (line.rstrip("\n"))
amount = float(line.rstrip("\n"))
total += amount
length = length + 1
average = total / length
infile.close()
print ('There were', length, 'numbers in the file.')
print (format(average, ',.2f'))
except IOError:
print ('An error occurred trying to read the file.')
except ValueError:
print ('Non-numeric data found in the file')
except:
print('An error has occurred')
【问题讨论】:
-
到目前为止你有什么?这是作业吗?
-
@user2330409 如果是家庭作业,你应该在问之前尝试一下。 SO 不是一个让你完成作业的网站,它是在你无法正确调试某些东西时提供帮助的。
-
感谢您的回复,这是家庭作业,我只是在上面添加了它。好吧,我已经尝试了一段时间,它确实需要调试。对不起,我没有在帖子中添加代码。
-
@user2330409 你遇到了什么错误?
-
对于我的原始代码,它只是说我的输出发生了错误
标签: python list exception-handling average