Я не думаю, что у него есть официальное название, это просто умный / ленивый способ быть кратким. Это примерно эквивалентно:
a = b if b else {}
или
if b:
a = b
else:
a = {}
Я написал это как комментарий, но думаю, стоит упомянуть здесь:
Вы должны быть очень осторожны при использовании этого трюка. Если вы намерены установить значение по умолчанию, когда что-то равно None, было бы лучше написать этот is None
тест явно, чем использовать этот трюк. Причина в том, что None - не единственная вещь, которая оценивает значение false в логическом контексте. 0, [], {}, ... также оценивается как ложное. Так что этот трюк может не дать ожидаемых результатов, если вы не задумывались об этих особых случаях.
Вот один из способов сделать это безопаснее:
a = b if b is not None else {}