내가 알아낼 수없는 이유 :왜 함수가 파이썬에서 거짓입니까?
f = lambda x: x
In [8]: f is True
Out[8]: False
In [9]: not f is True
Out[9]: True
In [10]: f is False
Out[10]: False
In [11]: f is True
Out[11]: False
In [12]: not f
Out[12]: False
In [13]: not f is True
Out[13]: True
In [14]: not f is False
Out[14]: True
확인. 그래서 지금까지 우리는 그것이 "=="대신에 "is"의 사용으로 인한 것이라고 상상할 수 있습니다. 여기에 표시된대로 :
In [15]: 0.00000 is 0
Out[15]: False
In [16]: 0.00000 == 0
Out[16]: True
Ok. 내가 기능에 그것을 할 다음 경우하지만 왜 : 내가 때문으로 설명하려고했다
In [17]: not f == False
Out[17]: True
In [18]: not f == True
Out[18]: True
In [19]: f ==True
Out[19]: False
In [20]: f ==False
Out[20]: False
In [21]: f
Out[21]: <function __main__.<lambda>>
대신 "=="의 "는"그러나 예 (19, 20) 내 논리를 분쇄. 누군가 설명 할 수 있습니까?
에 equivelent 그렇지? 다른 값들은 참과 거짓에 대해 어떻게 비교됩니까? –
awww 너무 바보. bool()을 사용하여 부울 값을 비교하는 것을 잊어 버렸습니다. 당연하지 . – deddu