Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Wouldn't this be a little cleaner?

    data = collection.get("key")
    if data:
        ...
    else:
        ...


If valid `data` can be zero, an empty string, or anything else “falsy”, then your version won’t handle those values correctly. It treats them the same as `None`, i.e. not found.


:facepalm:


No, this would crash with numpy arrays, pandas series and such, with a ValueError: The truth value of an array with more than one element is ambiguous.


No, truthiness (implicit bool coercion) is another thing you should avoid. This will do weird things if data is a string or a list or whatever.


That behaves differently (eg if collection["key"] = 0)


it depends on what's in the if blocks




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: