Qualcuno mi ha appena mostrato questo strano esempio di sintassi python. Perché [4] funziona?Cosa sta succedendo con questa sintassi python? (c == c in s)
mi sarei aspettato di valutare a uno [5] o [6], nessuno dei quali lavora. C'è qualche ottimizzazione prematura in corso qui che non dovrebbe essere?
In [1]: s = 'abcd'
In [2]: c = 'b'
In [3]: c in s
Out[3]: True
In [4]: c == c in s
Out[4]: True
In [5]: True in s
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-5-e00149345694> in <module>()
----> 1 True in s
TypeError: 'in <string>' requires string as left operand, not bool
In [6]: c == True
Out[6]: False