170 похожих чатов

А как без него? Либо ассигн, либо хинт

14 ответов

34 просмотра

ну либо метакласс

Jack Bolt- Автор вопроса
quantum super position
ну либо метакласс

Метакласс в любом случае, вопрос в другом -- оно же не станет частью класса, это надо синтаксис менять.

Jack Bolt
Метакласс в любом случае, вопрос в другом -- оно ж...

class Dict(dict): def __missing__(self, key): self[key] = key class Meta(type): @classmethod def __prepare__(metacls, name, bases): return Dict() class DumbEnum(metaclass=Meta): VALUE ANOTHER_VALUE print(DumbEnum.VALUE)

quantum super position
class Dict(dict): def __missing__(self, key): ...

Если сделать DumbEnum без значений, от него можно будет наследоваться же?

Arkady Strugatsky
Если сделать DumbEnum без значений, от него можно ...

Но ты не сможешь сделать множественное наследование от StrEnum и DumbEnum, если что

Jack Bolt- Автор вопроса
quantum super position
class Dict(dict): def __missing__(self, key): ...

Это прям лютая штука. То есть, когда знаешь, что __prepare__ неймспейс возвращает -- оно кажется обычным кодом, все логично, но до этого черная магия какая-то...

quantum super position
м?

Я о том что юзеру не обязательно знать что при создании енума используется какой-то там метакласс. Гораздо важнее ему знать что его енум это потомок абстрактного DumbEnum

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта