Ich habe bereits 3 Beiträge heute über pyschools.com Übungen ich hoffe, das ist nicht zu viel. Wie auch immer, die Übung fordert mich auf, eine Funktion zu schreiben, um die Uhrzeit in 24 Stunden Format zu konvertieren. Hier ist ein Beispiel: >>> time24hr ('12: 34am ') '0034hr'pyschools Thema 3 ex 9
Meine Funktion, die in meinem IDLE gut funktioniert:
def time24hr(tstr):
am_or_pm = tstr[-2:]
first_numbers = tstr[0:2]
last_numbers = tstr[3:5]
if am_or_pm == "am":
if first_numbers == '12':
first_in_am12 = '00'
return first_in_am12 + last_numbers + am_or_pm
else:
return first_numbers + last_numbers + am_or_pm
if am_or_pm == "pm":
if first_numbers == '12':
return first_numbers + last_numbers + am_or_pm
elif int(first_numbers) > 9:
ok = repr(int(first_numbers) + 12)
return ok + last_numbers + am_or_pm
elif int(first_numbers) <= 9:
ok = repr(int(tstr[1]) + 12)
return ok + last_numbers + am_or_pm
jedoch in der pyschools Website, wenn ich laufe Der Code gibt mir den folgenden Fehler: ValueError: ungültiges Literal für int() mit Basis 10: '1:' Was bedeutet das?
Schauen Sie genau auf die Fehlermeldung arbeiten. Auch ohne zu verstehen, wie die Fehlermeldung Ihnen sagt, was falsch war, können Sie wahrscheinlich sehen, was an dem fehlerhaften Teil falsch ist. – SingleNegationElimination