Der Name 'times' wird vor der globalen Deklaration verwendet - aber ES WIRD deklariert!
Ich programmiere ein kleines Programm für die Zeit und zeige auf geordnete Weise die Lösungen meiner Rubik-Würfel. Aber Python (3) macht mir immer wieder Sorgen, dass Zeiten vor der globalen Deklaration verwendet werden. Aber was seltsam ist, dass es gleich am Anfang als deklariert wirdtimes = []
(ja, es ist eine Liste) und dann nochmal auf die Funktion (da beschwert er sich) alstimes = [some, weird, list]
und "globalisieren" mitglobal times
. Hier ist mein Code, damit Sie ihn nach Belieben analysieren können:
import time
times = []
def timeit():
input("Press ENTER to start: ")
start_time = time.time()
input("Press ENTER to stop: ")
end_time = time.time()
the_time = round(end_time - start_time, 2)
print(str(the_time))
times.append(the_time)
global times
main()
def main():
print ("Do you want to...")
print ("1. Time your solving")
print ("2. See your solvings")
dothis = input(":: ")
if dothis == "1":
timeit()
elif dothis == "2":
sorte_times = times.sort()
sorted_times = sorte_times.reverse()
for curr_time in sorted_times:
print("%d - %f" % ((sorted_times.index(curr_time)+1), curr_time))
else:
print ("WTF? Please enter a valid number...")
main()
main()
Jede Hilfe wäre sehr dankbar, da ich neu in der Welt von Python bin :)