merkwürdiger timestamp

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.
BlackJack

@#cousin#: Vielleicht solltest Du Dich mal mit Funktionen auseinandersetzen, um die Teillösungen sauber zu trennen und wiederverwendbar zu machen.

Und für Zeiten und Datumsangaben gibt es zum einen das `datetime`-Modul und zum anderen hätte man auch Deine manuelle Methode mit Zeichenkettenformatierung über den ``%``-Operator auf Zeichenketten wesentlich kompakter hinbekommen. Ungetestet:

Code: Alles auswählen

year, month, day, hour, minute = struct.unpack('>H4B', line.decode('hex'))
print 'Date and time: %d-%02d-%02d  %02d:%02d' % (year, month, day, hour, minute)
#cousin#
User
Beiträge: 25
Registriert: Mittwoch 18. März 2009, 22:56
Wohnort: Mannheim
Kontaktdaten:

Hi Zusammen,

die Hinweise zu dem date-time-modul habe ich nun ebenfalls einfließen lassen, vielen Dank für den Hinweis.

Aber ich habe gerade bemerkt, dass ich ein anderes Problem habe. Die Funktion:

Code: Alles auswählen

asciiString = filter(lambda x: x in string.printable, asciiString)
filtert mir zwar alle Werte raus, die Steuerzeichen enthalten, aber leider auch Umlaute und ß.

Wie kann ich die filterfunktion dazu bringen, dass er mir diese Zeichen nicht filtert?
BlackJack

@#cousin#: Falls die Daten in einer 1-Byte-pro-Buchstabe-Kodierung vorliegen, einfach `string.printable` plus die zusätzlichen Bytewerte für die Zeichen für den Test verwenden!?

Dann solltest Du aber den Namen `asciiString` ändern, denn ASCII enthält keine Umlaute.
#cousin#
User
Beiträge: 25
Registriert: Mittwoch 18. März 2009, 22:56
Wohnort: Mannheim
Kontaktdaten:

ok, danke, habs nun so gemacht:

Code: Alles auswählen

asciiString = filter(lambda x: x in string.printable or x == "\xdf" or x == "\xfc" or x == "\xf6" or x == "\xe4" or x == "\xdc" or x == "\xd6" or x == "\xc4", asciiString)
kann ich das mit nem Array, oder mit ner Liste irgendwie verkürzen?
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

Statt

Code: Alles auswählen

x == 'a' or x == 'b' or x == 'c'
lieber

Code: Alles auswählen

x in 'abc'
MfG
HWK
#cousin#
User
Beiträge: 25
Registriert: Mittwoch 18. März 2009, 22:56
Wohnort: Mannheim
Kontaktdaten:

vielen Dank, das macht es bedeutend übersichtlicher
Benutzeravatar
str1442
User
Beiträge: 520
Registriert: Samstag 31. Mai 2008, 21:13

Code: Alles auswählen

x in 'abc'
Statt dem würde ich aber eher einen Tupel mit den einzelnen Zeichen benutzen, einen String einfach als Sequenz für "nicht-veränderliche, fest definierte, heterogene Daten" zu benutzen finde ich etwas unpassend, rein semantisch.
Antworten