Я интерпретирую, «если нет объекта person или у объекта person нет даты рождения», чтобы означать, что у объекта результата нет атрибута «person» и аналогично объект result.person не имеет »не имеет атрибута «дата рождения».Однако я заметил, что ваш предыдущий вопрос использует странную терминологию, такую как «объект person установлен на None» (в комментарии).Как вы устанавливаете объект на None?Вы имеете в виду атрибут person, установленный на None?Когда вы задаете вопрос, (1) сделайте его автономным и (2) полностью объясните, какова ваша фактическая структура данных.
import datetime
large_date = datetime.datetime(9999, 12, 31)
results.sort(key=lambda result:
result.person.birthdate
if hasattr(result, 'person') and hasattr(result.person, 'birthdate')
else large_date
)