Size: a a a

2021 November 10

AG

Arsen Gumin in Python
А где роль «юзай тайп хинты»?
источник

T

Tishka17 in Python
в другом чате
источник

A

Andrey in Python
В unittest он там по историческим причинам, потому что библиотеку делали с оглядкой на JUnit, а pep8 тогда ещё не было
источник

Pavel Павлик in Python
То есть ты методы класса хочешь регистрировать как хендлеры? Или методы какого-то инстанса этого класса?
источник

AD

Aleksandr Danilov in Python
class RandomClass:
   def method1(...):
       ...

   def method2(...):
       ...

Получить список из методов, ровно в том порядке, в котором были описаны, сверху вниз.

Без влияния на порядок названий и прочей ебалы.
источник

ВЩ

Взщз Щщщхш in Python
а зачем?
источник

AD

Aleksandr Danilov in Python
Инстанса
источник

AK

Alex K. in Python
Я в курсе, но вопроса "почему" или "с каких пор" задано не было.
источник

AD

Aleksandr Danilov in Python
экспериментирую
источник

T

Tishka17 in Python
я бы сделал декоратор, который дескриптор и запоминает
источник

Pavel Павлик in Python
А не проще ли их всех просто перечислить в том порядке, который тебе нужен, уву бцдешь регистрировать хендлер?
источник

ВЩ

Взщз Щщщхш in Python
Смотря то считать методом
источник

T

Tishka17 in Python
или даже не дескриптор, а просто
источник

AD

Aleksandr Danilov in Python
Уточни что понимаешь под дескриптором
источник

AD

Aleksandr Danilov in Python
Перечислить?

Имеешь ввиду порядок как в классе они указаны?Какой на каком месте?
источник

AD

Aleksandr Danilov in Python
method1, method2 в примере
источник

ВЩ

Взщз Щщщхш in Python
class RandomClass:
   def __init__(self, function):
       assert callable(function)
       self.function = function

   def method1(self):
       ...

   @staticmethod
   def method2(foo, bar):
       ...

   @classmethod
   def method3(cls, fizz, buzz):
       ...

   @property
   def huoperty(self);
       ...

   @my_custom_descriptor_that_acts_like_instancemethod
   def method4(self):
       ...

что должно вывести?
источник

Pavel Павлик in Python
Мне кажется, что лучше сделать класс, инстанс которого бы все сохранял порядок, в таком случае.
источник

A

Andrey in Python
Вопрос был про использование по соглашению. В unittest camelCase не по соглашению
источник

T

Tishka17 in Python
class Registry:
   def __init__(self):
       self.methods = []

   def __call__(self, func):
       self.methods.append(func)
       return func


class Real:
   registry = Registry()

   @registry
   def a(self): ...

   @registry
   def b(self):...


print(Real().registry.methods)
источник