Filip Gruszczyński schrieb: > One of the Python Zen rules is Explicit is better implicit. And yet > it's ok to do: > > if x: > do_sth > > when x is string or list. Since it's very comfy, I've got nothing > against though. I am just curious, why is it so? > > And one more thing: is it ok to do > > if x: > > instead of > > if x is not None: > > Because I often encounter it and would like to know, if I can simplify > it. Especially that I liked similar construction in C/C++. > Depends on what you need. If your x is 0 or 0.0, '', the empty list, dictionary or set, or a class instance with __len__ 0 or __nonzero__ false, then x is false, but "x is not None" is true.
HTH Sibylle -- http://mail.python.org/mailman/listinfo/python-list