On Wed, Dec 16, 2020 at 10:17 PM Peter J. Holzer <hjp-pyt...@hjp.at> wrote: > > On 2020-12-15 13:07:25 -0800, Ethan Furman wrote: > > On 12/15/20 9:07 AM, Mark Polesky via Python-list wrote: > > > > > D = {'a':1} > > > > > > def get_default(): > > > print('Nobody expects this') > > > return 0 > > > > > > print(D.get('a', get_default())) > > > > Python has short-circuiting logical operations, so one way to get the > > behavior you're looking for is: > > > > D.get('a') or get_default() > > That will call get_default for any falsey value (0, "", an empty list ...), > not just for missing values. > > Which may or may not be what the OP wants. >
D['a'] if 'a' in D else get_default() ChrisA -- https://mail.python.org/mailman/listinfo/python-list