2016-07-19 245 views
-1

我有以下代码。变量transaction_date(从Pandas数据框中检索)的值为'03/04/2015'。但是,当我将它与字符串“03/04/2015”进行比较时,它们并不相同。比较Python字符串

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 

上面的代码产生以下输出。

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' 

我怀疑这是某种间距问题,但我不知道如何纠正它。还有什么我可以检查,看看这些字符串是如何不同?

回答

3

transaction_date'03/04/15'。你在比较'03/04/2015'。请注意0​​。