Die Berechnung der durchschnittlichen von Nummern .txt-Datei mit Python

def main():

    total = 0.0
    length = 0.0
    average = 0.0

    try:
        #Get the name of a file
        filename = input('Enter a file name: ')

        #Open the file
        infile = open(filename, 'r')

        #Read the file's contents
        contents = infile.read()

        #Display the file's contents
        print(contents)

        #Read values from file and compute average
        for line in infile:
            amount = float(line)
            total += amount
            length = length + 1

        average = total / length

        #Close the file
        infile.close()

        #Print the amount of numbers in file and average
        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')


main()

Dies ist, wie die zahlen in meinem .txt-Datei angezeigt:

78
65
99
88
100
96
76

Dass ich immer "Ein Fehler ist aufgetreten", wenn ich versuche zu laufen. Nachdem ich den Kommentar heraus, dass ich eine Teilbarkeit Fehler. Ich habe versucht, nur ausdrucken, die Summe und die Länge zu sehen, wenn Sie waren eigentlich computing, sondern jeder ist 0,0 also anscheinend habe ich einige Probleme darin, Sie zu akkumulieren richtig.

  • Wenn Sie möchten, um herauszufinden, was schief gelaufen ist, versuchen Sie zunächst nicht die exception zu fangen, so dass Sie sehen können, wird die traceback.
InformationsquelleAutor Jeff D | 2012-03-26
Schreibe einen Kommentar