Ich habe eine .txt-Datei und deren Inhalt ist wie folgt:Python - ‚Valueerror: Zeitdaten '' nicht mit Format '% d /% m /% Y'
---------------
0,
test1
[email protected]
19/12/2016
---------------
I attemping bin um das Datum zu lesen und es mit dem gegenwärtigen zu vergleichen.
Jetzt gibt es mir die Nachricht im Titel, aber ich habe versucht, das aktuelle Datum und das Datum zu formatieren, die ich aus meiner Datei zu %d/%m/%Y
passen. also vermute ich, dass es sich um ein Problem mit dem Lesen von Dateien handelt, aber ich kann meinen Fehler nicht finden.
present = datetime.now() # Get current time
print "Present time: ", present.strftime('%d/%m/%Y') # Format present time
with open("birthday.txt", 'r') as database:
last_line = database.readline()[-1]
while junk != last_line:
junk = database.readline().strip('\n')
name_bday = database.readline().strip('\n')
mail_bday = database.readline().strip('\n')
date_bday = database.readline().strip('\n')
print junk
print name_bday
print mail_bday
print date_bday
list_date = time.strptime(date_bday, "%d/%m/%Y")
date = datetime.fromtimestamp(mktime(list_date))
if date == present:
print "It's your birthday!"
else:
print "It's not your birthday."
'database.readline() [-1] 'gibt nicht die letzte Zeile in der Datei zurück. – DeepSpace
Oh, ich dachte es wäre so. Wie sonst würdest du das sonst tun? – javanewbie
@javanewbie 'database.readlines() [- 1]'. Mit 's' nach' readline' –