Tishka17
чтобы можно было писать и message.chat.id и message.chat_id
Я про херню с __dict__ когда стандартная реализация делает это лучше
c
чтоб вообще пробелом
Dogma
Умники и не очень Давайте вы расскажете разницу между __getattr__ и __getattribute__ без Гугла и расскажете почему последнее может выплюнуть вам RecursionError
Dmytro
я наркоман, и я хз в чем разница. по идеи эти методы должны делать одно и то же.
Slam!
иначе рекурсия пойдет
Dogma
Дитяточко
Tishka17
class A: x=0 def __getattr__(self, s): print(s) print(A().x) print(A().__dict__)
Tishka17
Что будет выведено на экран?
Dogma
иначе рекурсия пойдет
Хули ты его советуешь в бегинерсах всегда если сам не знаешь как оно работает. Причем советуешь более хуевый вариант и почти ни кем не пользуемый
Dogma
Зато которым легко прострелить колени
Tishka17
вроде того
И к тебе тот же вопрос
Tishka17
0 {}
Имеено
maxlunar
иначе рекурсия пойдет
обычно используют object.__getattribute__(self, args) если уж на то пошло
Tishka17
х нету в дикте и гетаттр не вызван
c
И к тебе тот же вопрос
я никому не советую __getattribute__ в беггинерсах
Slam!
Где?
https://t.me/ru_python/1004194
Tishka17
Во во
maxlunar
Обычно getattr
он вроде как будет вызван ежели аттрибут не найден внутри. а getattribute вообще при любой попытке достать аттрибут
c
Я про твою херню с диктом
мм? https://t.me/ru_python/1004162
Slam!
c
так херня не моя, ручки чистенькие
Dogma
Именно
Мисфаир
Tishka17
Сорри
Tishka17
Как заставить программиста читать документацию, а не подсказки IDE
Dogma
Он же адепт тайпхинтов
Tishka17
не понял. что то не так?
Ни одна Ide не сможет подсказать какие есть методы, потому что они определяются в рантайме
Tishka17
Очень удобно
Dmytro
не понял. что то не так?
у тебя getattr возвращает всегда функцию, это норма?
Slam!
Очень удобно
так вот я как то и спрашивал
Tishka17
Вместо того, чтобы нажать точку и выбрать, приходится набирать всегда руками и ещё проверять опечатки
Dmytro
я не шарю, может так и надо
Slam!
вместо того, чтобы писать метод, ты просто пишешь его как атрибут
Tishka17
А так - да, если лень - самое то
Slam!
А так - да, если лень - самое то
я как-то спрашивал, можно ли ide скормить список методов, которые он будет предлагать
Tishka17
Если лень делать интерфейс, но не лень потом им пользоваться
Slam!
без pyi?
Slam!
у меня просто есть список методов
Tishka17
А в чем проблема их описать в коде?
Slam!
проблема в прослойке, которой лень
Slam!
запили генератор
не, мне не сильно нужно уже
Tishka17
Slam!
библиотеки для работы с нодами эфира и трона есть, но в них нет асинка
Tishka17
Я бы сделал такое api
Slam!
Я бы сделал такое api
мой код выглядит проще
Tishka17
Тут тебе и методы и список параметров сразу понятен
Tishka17
Но описывать надо только сигнатуру, остальное всё как у тебя
Tishka17
Вот твой _post это у меня api_method
Tishka17
И дальше список функций api в классе
Slam!
библиотеки для работы с нодами эфира и трона есть, но в них нет асинка
у трона немного другая ситуация - там не JSON-RPC, поэтому так методы дергать не получится
Slam!
можно все равно
можно через несколько точек, да, например
Tishka17
можно все равно
Там всякие преобразования же
Tishka17
маппинги!
Я про логику работы параметров
Slam!
по сути, если делать через несколько точек, то нужно будет после каждого вызова атрибута возвращать такой же объект, у которого снова будет дернут атрибут, но результат вызова будет знать о предыдущих
Slam!
не знаю, может можно как то еще