Вообще, код надо писать так, как будто ты его откроешь через 10 лет. Представил?
Если там будут какие-то нюансы, ты всё равно про них не вспомнишь.
1) Функции нужно называть императивно (повелительное наклонение).
2) Используй пространства имён.
открыть_ёжика_левого
открыть_ёжика_правого
открыть - это первое пространство имён
ёжика - это второе пространство имён
правого - это третье пространство имён (пустое)
левого - это четвёртое пространство имён (пустое)
Одно пространство находится в другом, так имена получаются короткими и конкретными.
Ориентируешься по количеству: если действий мало, а животных много, то в действиях находятся животные; если же животных мало, а действий много, то в животных находятся действия.
3) Используй идиомы
Вместо
for ticket in tickets:
используй
for i in tickets:
i - это item
Эта идиома перебора элементов последовательности подходит для многих языков. Поэтому даже более понятный ticket не будет выглядеть настолько же привычно, как годами используемый i.
4) При создании имени делай его уникальным
Что ещё я мог бы назвать этим именем в данном коде? Если ответа нет, то имя хорошее.