Python Problem

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Jannik4
User
Beiträge: 1
Registriert: Dienstag 5. Januar 2021, 14:27

Moin Leute
Ich wollte einmal fragen warum hier Error beim Ausführen steht. Ich Programmiere noch nicht solange.

Alter = input("Wie alt bist du? ")


Jahre = 1*Alter
Monate = 12*Alter
Tage = 365*Alter
Stunden = 24*Alter
Minuten = 1440*Alter
Sekunden = 86400*Alter


print("Du lebst schon seit" + Jahre+ "Jahren und" + Monate + "Monaten und" + Tage +"Tagen und" + Stunden + "Stunden und" + Minuten + "Minuten und " + Sekunden + "Sekunden"
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

input liefert einen String. Und du willst damit als Ganzzahl rechnen. Das muss also konvertiert werden:

Code: Alles auswählen

alter = int(input("Wie alt bist du?"))
In Zukunft bitte immer

- den Code in Code-Tags angeben
- den vollstaendigen Fehler, der auch passend zum Code sein muss, angeben.

Und bitte gleich zu Beginn deiner Karriere die Namenskonvention von Python aneignen - Variablen schreibt man klein_mit_unterstrich.
Benutzeravatar
__blackjack__
User
Beiträge: 14053
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Jannik4: Inhaltlich wäre die Ausgabe übrigens auch falsch. Da wäre man sechs mal so alt wie `Alter` laut Ausgabe.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Zizibee
User
Beiträge: 229
Registriert: Donnerstag 12. April 2007, 08:36

@__blackjack__: nicht ganz, denn die Zeile

Code: Alles auswählen

Stunden = 24*Alter
berechnet... also nicht ganz das, was sie soll :wink:
Genau wie die Zeilen darunter.
bb1898
User
Beiträge: 216
Registriert: Mittwoch 12. Juli 2006, 14:28

Wenn Du die Eingabe in eine Zahl umgewandelt hast, dann kommt der nächste Fehler: Du versuchst hier in Basic- oder Perl-Manier Zeichenketten und Zahlen mit Pluszeichen zusammenzufügen, da macht Python aber nicht mit. Schau Dir f-Strings und String-Formatierung an - damit kannst Du festen Text und Variablen aller Art zusammensetzen.

Was im übrigen die Rechnung betrifft: Du rechnest das in Jahren angegebene Alter in kleinere Einheiten um (mit dem von Zizibee gefundenen Fehler), das passt dann aber nicht zum Text der Antwort. Für die Antwort, die Du geben willst, müsstest Du das Geburtsdatum abfragen.
Benutzeravatar
__blackjack__
User
Beiträge: 14053
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Oder alternativ den Benutzer nach seinem Alter in Sekunden fragen. 🤡
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Antworten