У меня есть следующий фрагмент кода, который не работает так, как я ожидаю ...
current_frame = 15 # just for showcasing purposes
g_ch = 7
if (current_frame != int(row[0])) and (int(row[1]) != g_ch):
current_frame = int(row[0])
print "curious================================="
print current_frame
print row
print current_frame, " != ", int(row[0]), ", ", current_frame != int(row[0])
print "========================================"
, который печатает для любого конкретного случая:
curious=================================
15
['15', '1', 'more data'] 15 != 15 , False
========================================
Это, очевидно, никогда не должно даже вводиться в операторе if, так как равенство показывает false. Почему это происходит?
edit: я также пробовал это с! = Вместо 'is not' и получил те же результаты.