Zeiterfassung

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
justinsopa
User
Beiträge: 6
Registriert: Sonntag 5. Oktober 2008, 21:02

Hallo
ich habe mit Python 3 angefangen (Neuling) und suche eine Lösung zur Zeiterfassung. Ich habe nichts gefunden, wie ich nach Eingabe von Zeichen diese zu Datum und Zeit umwandle. Kann mir jemand einen Hinweis geben?
Ich will, dass Datum und Zeit manuell eingegeben werden und nicht das aktuelle Tagesdatum und Tageszeit angeboten werden.

justinsopa
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

Code: Alles auswählen

In [1083]: from time import strptime 

In [1084]: hours = raw_input('hours: ')
hours: 12

In [1085]: minutes = raw_input('minutes: ')
minutes: 34

In [1086]: seconds = raw_input('seconds: ')
seconds: 56

In [1087]: fmt_time = strptime(':'.join((hours, minutes, seconds)), '%H:%M:%S')

In [1088]: (fmt_time.tm_hour, fmt_time.tm_min, fmt_time.tm_sec)
Out[1088]: (12, 34, 56)
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Besser man arbeitet da mit ``datetime``.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
justinsopa
User
Beiträge: 6
Registriert: Sonntag 5. Oktober 2008, 21:02

danke euch beiden für die hinweise, habe nochmals intensiv die literatur gewälzt zu python 3.0 und habe mir folgende lösung erarbeitet, die jetzt noch entsprechend bearbeitet werden muß, - zb eingrenzung der tage monate und jahre --- fehler abfangen usw.
hier meine 1. lösung



[/code]
# Modul time
import time # liefert die aktuelle Zeit seit dem 01.01.1970

# Zeit in sekunden
print("Zeit in sekunden:", time.time())

# Aktuelle locale Zeit
lt = time.localtime()

print(time.strftime("Tag.Monat.Jahr: %d.%m.%y", lt))

# Datum erfassen -
tag = range(0,30)
monat = range(0,11)
jahr = range(0,2999) # wieviel Jahre gebe ich mir noch?

print("Tagesdatum eingeben:") # Zur Zeit bitte noch fehlerfrei
# die Werte erfassen, da die Fehlerbehandlung
# noch folgt
tag = input()
t = int(tag)
monat = input()
m = int(monat)
jahr = input()
j = int(jahr)

# datums-tupel erzeugen und ausgeben
dt = j, m, t, 0, 0, 0, 0, 0, 0
datums_erfassung = time.mktime(dt)
lt = time.localtime(datums_erfassung)

# Wochentag
wtage = ["Montag", "Dienstag", "Mittwoch", "Donnerstag",
"Freitag", "samstag", "sonntag"]
wtagnr = lt[6]
print("es ist", wtage[wtagnr], "der", time.strftime("%d.%m.%Y", dt))
Benutzeravatar
mkesper
User
Beiträge: 919
Registriert: Montag 20. November 2006, 15:48
Wohnort: formerly known as mkallas
Kontaktdaten:

Willst du vom Anwender erfassen lassen, welcher Tag heute ist oder soll dein Programm das berechnen?
Bin verwirrt...
justinsopa
User
Beiträge: 6
Registriert: Sonntag 5. Oktober 2008, 21:02

Ich will, dass jeder anwender jedes beliebige Datum eintippen kann/soll und zur kontrolle soll das Datum angezeigt werden, dieses soll später in einer datenbank erfasst werden.
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

"jedes beliebige"? Was meinst du damit?
BlackJack

@derdon: Was ist denn da jetzt nicht zu verstehen? Der Anwender wird nach einem Datum gefragt und soll das halt eingeben können.
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

@BlackJack: Ich habe justinsopa bis eben falsch verstanden. Ich dachte, der Benutzer solle jedes beliebige Datum*format* eingeben können. Da mir dies unmöglich erscheint, hakte ich nach.
justinsopa
User
Beiträge: 6
Registriert: Sonntag 5. Oktober 2008, 21:02

hallo denkt nicht zu kompliziert,
ich brauche eine möglichkeit generell ein datum für jegliche fehlzeiten manuell zu erfassen. ich habe in meinem "computerleben" schon die "stabilsten" pc' s ein unkorrektes datum und uhrzeit anzeigen lassen, jeder nutzer muss die zu erfassenden daten - bei bedarf ändern können und da habe ich als neueinsteiger bei python 3.0 eine möglichkeit gesucht datum und später die zeit manuell zu erfassen. mit eurer hilfe habe ich eine lösung gefunden. (zum jahresende soll python 3 und postgresql einige meiner datenerfassungsprobleme in meiner kaufmännischen tätigkeit lösen.
einer löst kreuzworträtsel - ich frische meine programmierkenntnisse aus vergangener zeit auf und python scheint mir da sehr entgegen zu kommen.
werde euch über meine fortschritte in der zeiterfassung weiter behelligen,

für den morgigen tag viel spass
BlackJack

@justinsopa: Gibt's denn schon eine Anbindung an PostgreSQL für Python 3.0? Also ich würde ja für "reale" Programme immer noch Python 2.x verwenden. Die Auswahl an nützlichen Bibliotheken ist einfach viel grösser.
Antworten