Empty list is equal to None or not?

ironpython, python, python-2.7, python-3.x

Solution

The empty list, `[]`, is not equal to `None`.

However, it can evaluate to `False`--that is to say, its "truthiness" value is `False`. (See the sources in the comments left on the OP.)

Because of this,

>>> [] == False
False
>>> if []:
...     print "true!"
... else:
...     print "false!"
false!

Problem

Possible Duplicate: Why does “[] == False” evaluate to False when “if not []” succeeds? I am new to python as per ternary operator of python ``` >>> 'true' if True else 'false' true true ``` i am expecting for below code output as [] because [] not equal to None ``` >>> a=[] >>> a==None False >>> a if a else None None ``` pleas correct if i am wrong Thanks hema

Original source

Related problems