Ответ IfLoop (и комментарий MatToufoutu) отлично работает для автономных переменных, но я хотел предоставить ответ всем, кто пытается сделать что-то подобное для отдельных записей в списках, кортежах или словарях.
Словари
existing_dict = {"spam": 1, "eggs": 2}
existing_dict["foo"] = existing_dict["foo"] if "foo" in existing_dict else 3
Возвращает {"spam": 1, "eggs": 2, "foo": 3}
Списки
existing_list = ["spam","eggs"]
existing_list = existing_list if len(existing_list)==3 else
existing_list + ["foo"]
Возвращает ["spam", "eggs", "foo"]
Кортежи
existing_tuple = ("spam","eggs")
existing_tuple = existing_tuple if len(existing_tuple)==3 else
existing_tuple + ("foo",)
Возвращает ("spam", "eggs", "foo")
(Не забудьте запятую в ("foo",)
для определения «одиночного» кортежа.)
Решение со списками и кортежами будет более сложным, если вы хотите сделать больше, чем просто проверить длину и добавить в конец.Тем не менее, это дает представление о том, что вы можете сделать.