Ich habe versucht, ein Programm zu erstellen, das die Anzahl der Tiere (Bär, Wolf, etc.) zählt und sie in Variablen setzt.Python 2.7 Schwierigkeit mit Dateien
Dies funktioniert nicht
import os
def count_species():
sal_count = 0
tro_count = 0
filename1 = animals.txt
if os.path.exists(animals.txt):
f = open(filename1, 'r')
for line in f:#will execute each line in the file individually
if line == 'Salmon':
sal_count +=1
if line == 'Trout':
tro_count += 1
Aus irgendeinem Grund das Programm nicht, dass die erste Zeile == Salmon nicht registrieren. Alles andere scheint zu funktionieren. Ein Beispiel für die Datei finden Sie unter
Salmon
Trout
Salmon
Was ist los?
+1 für 'mit' und Listenverständnis - macht den Code lesbarer, sauberer und eleganter. Erwägen Sie, einen Weg hinzuzufügen, damit OP nicht zwei "if" -Anweisungen verwenden kann, wie zum Beispiel "sal_count = lines.count ('Salmon')". –
Es müssen keine Readlines aufgerufen werden. –