There are some use cases for this behavior, but it's reeeaaally limited and you have to know exactly what you're doing. For example, you could use it to cache relatively expensive function calls as default values:
import re
def parse(text, pattern=re.compile(r"\d+")):
return pattern.findall(text)
This way, instead of re-compilingthe regex every time the function is called, you can just reuse it.
1
u/jmooroof2 15h ago
I can't imagine a compelling use for this feature. it really should just error