Ad
def quicksort(l):
    match l:
        case a, *b:
            l1 = quicksort([e for e in b if e <= a])
            l2 = quicksort([e for e in b if e > a])
            return l1 + [a] + l2
        case _:
            return l

"Ask for forgiveness, not permission"-style. This is about 40% faster in the general case.

Code
Diff
  • def division(a, b):
        try:
            return a / b
        except:
            return None
    • def division(a, b):
    • if b == 0:
    • return None
    • return a / b
    • try:
    • return a / b
    • except:
    • return None

Refactor to one-liner.

Code
Diff
  • def division(a, b):
        return a / b if b != 0 else None
    
    • def division(a, b):
    • if b == 0:
    • return None
    • return a / b
    • return a / b if b != 0 else None