编写一个程序,计算fi中存储的所有数字的平均值

2024-06-28 11:13:56 发布

您现在位置:Python中文网/ 问答频道 /正文

'''
Average Number 
'''

def main ():
    import sys
    try:
        NumberTxt = open("numbers.txt", "r")
    except IOError as e:
        print ("Non-numeric data found in the file   /n press enter" )
    except (ValueError):
        print( "Non-numberic data found in the file /n press enter")
    else:
        TotalNumber = 0
        NumbersOfLines = 0
        line = NumberTxt.readline()

        while line !="":
            NumbersOfLines += 1
            TotalNumber += int( line )
            line = NumberTxt.readline()
        averageNumbers = TotalNumber / NumbersOfLines

        print ( "The average is:", averageNumbers)
        print ( "press enter" )

main()


Tags: theindatamainlinefilepressprint
1条回答
网友
1楼 · 发布于 2024-06-28 11:13:56

对于不完整的信息,最可能的原因是因为从文件中读取的行的末尾仍然有换行符,最后一行只是换行符\n,所以while仍然是真的,但是int("\n")失败了。所以,要修改这两条线:

line = NumberTxt.readline().strip() # Strip leading and trailing spaces and newlines

while line: # Not strictly necessary, but more Pythonic to test this way

相关问题 更多 >