Hi, I recently realised one can use immutable default arguments to avoid a chain of:
def append_to(element, to=None):
if to is None:
to = []
at the beginning of each function with default argument for set, list, or dict.
Hi, I recently realised one can use immutable default arguments to avoid a chain of:
def append_to(element, to=None):
if to is None:
to = []
at the beginning of each function with default argument for set, list, or dict.
This is the way you’re supposed to write it in Python.
It is something you get used to, yet I think it’s sad.
You can use mutable default arguments now with a new syntax:
https://peps.python.org/pep-0671/
def bisect_right(a, x, lo=0, hi=>len(a), *, key=None): def connect(timeout=>default_timeout): def add_item(item, target=>[]): def format_time(fmt, time_t=>time.time()):
Thank you
This is only a Draft for now though
Oh wow! This would be great I really hope it’s accepted and implemented, makes a lot of sense!
Does not seems to work on 3.12: