5 Antworten

Hole Dir das erstbeste Programm, das Du finden kannst. Typischerweise ist es jenes, das "hello world" ausgibt. Deine Vorlage.

Dann machst Du Dir Variablen für die Zeit. Denen weist Du zu, was Du rechnen willst:

  • dat1 = hier und jetzt (siehe Anleitung)
  • dat2 = Dein Geburtstag
  • dat3 = Zeitspanne
  • Zeitspanne in string verwandeln

Subtrahieren und das Ergebnis ausgeben wie "hello world".

Woher ich das weiß:Berufserfahrung – ich arbeite schon sehr lange im EDV Bereich, viele Sparten
Anastasia354 
Fragesteller
 05.06.2020, 12:45

Wie meinst du das mit ,,hello world"?

0
Mauritan  05.06.2020, 13:52
@Anastasia354

Wenn im Internet irgendwo ein Tutorial zu einer Programmiersprache zu finden ist, dann ist ganz oft das erste Programm eines, das ausgibt "Hello World".

Wie geht es Dir mit meiner Anleitung?

0

Der Ansatz ist leicht:

import time

jetzt  = time.time()
geburt = time.mktime((1980, 4, 8, 10, 30, 59, 0, 0, 0))

# Alter in Jahren
print((jetzt - geburt) / 60 / 60 / 24 / 365.25)

Den Rest solltest du selber schaffen:

PS.: Schau dir zum besseren Verständnis den Unix-Timestamp an: https://de.wikipedia.org/wiki/Unixzeit

Woher ich das weiß:Berufserfahrung – Softwareentwickler f. Web, Win. & Linux (seit 2001)

Genau genommen sind es 365,2425 Tage.

https://de.wikipedia.org/wiki/Jahr

Die längerfristig mittlere Länge des Kalenderjahres nach dem gregorianischen Kalender (ohne Berücksichtigung der koordinierten Weltzeit):

  • 365,2425 Tage = 365 Tage, 5 Stunden, 49 Minuten, 12 Sekunden = 31.556.952 Sekunden.
Woher ich das weiß:Recherche
Anastasia354 
Fragesteller
 05.06.2020, 16:15

Und dann? Also bei mir funktioniert ,,time.mktime" irgendwie nicht. Da wird mir ein tubel Fehler angezeigt

0

Das strftime stört mich, wozu soll man das nehmen ? ich würde mir mit time.time() den aktuellen Zeitstempel holen und mit time.mktime(...) den des Geburtstags und diese voneinander subtrahieren. Da kommt die Differenz in Sekunden raus. Für Minuten musst du durch 60 dividieren, für Tage durch 60*60*24, für Jahre 60*60*24*365.24. Wenn Du "x Jahre , y Tage und z Minuten" haben willst, rechne erst die Jahre aus, nimm den Rest davon (modulo, %-Operator), Rechne die Tage aus, etc.

Woher ich das weiß:Studium / Ausbildung – Informatiker
Anastasia354 
Fragesteller
 05.06.2020, 12:45

Strftime ist halt die Vorgabe

0

Woran haperts denn?

Du holst Dir beide Daten und machst eine komponentenweise Subtraktion unter Berücksichtigung der nächsten Untereinheit (falls es keine fertige Funktion dafür geben sollte).

Ausführungen über die Probleme mit dem mittleren Tropenjahr und der Divergenz zum Kalenderjahr spare ich mir an dieser Stelle.