Remix.run Logo
japhyr 20 hours ago

Wouldn't this be a little cleaner?

    data = collection.get("key")
    if data:
        ...
    else:
        ...
pansa2 20 hours ago | parent | next [-]

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.

japhyr 19 hours ago | parent [-]

:facepalm:

blackbear_ 19 hours ago | parent | prev | next [-]

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.

Shish2k 20 hours ago | parent | prev | next [-]

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

IshKebab 17 hours ago | parent | prev | next [-]

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.

tayo42 20 hours ago | parent | prev [-]

it depends on what's in the if blocks