vitar ou atrasar a avaliação de itens que não podem ser usad
Como é possível obter uma avaliação lenta no Python? Alguns exemplos simples:
>>> def foo(x):
... print(x)
... return x
...
>>> random.choice((foo('spam'), foo('eggs')))
spam
eggs
'eggs'
Acima, nós realmente não precisamos avaliar todos os itens dessa tupla, para escolher um. E abaixo, o padrãofoo()
realmente não precisava ser calculado, a menos que a chave de pesquisa estivesse realmente ausente no ditado:
>>> d = {1: "one"}
>>> d.get(2, foo("default"))
default
'default'
>>> d.get(1, foo("default"))
default
'one'
Estou procurando uma maneira Pythonic de refatorar exemplos como o acima para avaliar preguiçosament