• @antlion@lemmy.dbzer0.com
    link
    fedilink
    English
    74 days ago

    Could also compare against:

    if not len(mylist)
    

    That way this version isn’t evaluating two functions. The bool evaluation of an integer is false when zero, otherwise true.

    • @sugar_in_your_tea@sh.itjust.works
      link
      fedilink
      English
      23 days ago

      That’s worse. IMO, solve this problem with two things:

      • type hint mylist as list | None or just list
      • use if not mylist:

      The first documents intent and gives you static analysis tools some context to check for type consistency/compatibility, and the second shows that None vs empty isn’t an important distinction here.

      • @antlion@lemmy.dbzer0.com
        link
        fedilink
        English
        13 days ago

        But the first example does the same thing for an empty list. I guess the lesson is that if you’re measuring the speed of arbitrary stylistic syntax choices, maybe Python isn’t the best language for you.

        • @FooBarrington@lemmy.world
          link
          fedilink
          English
          0
          edit-2
          3 days ago

          Yes, the first example does the same thing, but there’s still less to mentally parse. Ideally you should just use if len(mylist) == 0:.