Ich habe den folgenden Code. Die Variable transaction_date (die aus einem Pandas-Datenframe abgerufen wird) hat den Wert '03/04/2015 '. Wenn ich es jedoch mit der Saite '03/04/2015 'vergleiche, sind sie nicht gleich. Vergleichen Python Strings
for index, rows in df_per_line.iterrows():
validations = rows['NB_VALID']
transaction_date = rows['DATE_TRANSACTION']
try:
map_date_validation['03/04/2015'][line_num] += validations
print 'first succeeded!'
print transaction_date
print type(transaction_date)
print type('03/04/15')
if transaction_date == '03/04/2015':
print 'YEAH!'
else:
print 'NAY!'
map_date_validation[transaction_date][line_num] += validations
except KeyError:
print 'weird date found!'
print transaction_date
#continue
Der obige Code ergibt die folgende Ausgabe.
first succeeded!
03/04/15
<type 'str'>
<type 'str'>
NAY!
weird date found!
03/04/15
Traceback (most recent call last):
File "rouen_ticket_parser.py", line 108, in <module>
print map_date_validation[transaction_date]
KeyError: '03/04/15'
Ich vermute, dass dies eine Art Abstands Problem ist, aber ich bin nicht sicher, wie es zu beheben. Kann ich noch etwas überprüfen, um zu sehen, wie diese Saiten anders sind?