Ich versuche, eine Aufgabe mit Python abzuschließen. Ziel ist es, Wörterbücher zu verwenden, um eine .txt-Datei zu analysieren und die Zeit und die Temp zu isolieren. Um sie in ein Wörterbuch zu stellen und dann die höchste Temperatur und ihre entsprechende Zeit zu finden.Programmierung Python: Verwenden von Wörterbüchern, um Daten zu isolieren
Ich habe die Zuordnung abgeschlossen, aber ich kann nicht herausfinden, wie es NUR die höchste drucken kann. Stattdessen drucke ich die ersten drei.
fname = raw_input("Enter the file name: ")
try:
fhand = open(fname)
except:
print "The file can not be opened."
exit()
climate = dict() #creates dictionary
count = 0
largest = None # Iteration variable to find highest temp
high = 0
for line in fhand:
count += 1 #count variable to get rid of line 1
if count == 1: #may be causing it to iterate 3x????
continue
words = line.split() # splits into tokens
time = words[0] + words[1] # combines time and am/pm
climate[time] = words[2] # matches time to temp making key-value pair
for key in climate:
if climate[key] > largest: # Iterates through key-value's finding largest and placing it in largest container
largest = climate[key]
print 'The highest temperatures occurred at', key, 'reaching', largest, 'Fahrenheit.'
fhand.close()
definieren 'key' vor der Schleife, so dass es in ihrem Umfang außerhalb der Schleife ist, und nicht gedruckt werden innerhalb der Schleife, Drucken, nachdem die 'for'-Schleife endet. – sberry
Willkommen bei SO. Ich habe die Struktur der Frage bearbeitet, um sie etwas klarer zu machen. Ich empfehle, anstatt eine Bildverknüpfung an Ihre IDE-Ausgabe zu senden, die Frage zu bearbeiten, um die Ausgabe als Text in der Frage anzuzeigen. Auch @sberry Vorschlag ist auf Punkt. – paisanco