All streams
Search
Write a publication
Pull to refresh
1
0
Максим @cement-hools

Ведущий разработчик

Send message

прикольно, но надо будет тогда все до ума довести, а то найдут не стандартные случаии

Извините, я не понял вопроса. Попробуйте переформулировать

тогда придется все методы словаря описывать, ну в принципе можно, спасибо

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

assert digit_mapping['two'] == 2
assert digit_mapping[2] == 'two'
assert digit_mapping['2'] == 'two'

не создастся класс тогда, ошибка словаря зарайзиртся

Прикольно, не знал что он так работает. А он значения отдаст тоже как хэш-таблица? Почитал исходники, не совсем понял как он работает. По сути то что мне и нужно, но если бы я знал, не придумал бы сам такой велосипед))). У Enum по разному надо вызывать метод чтобы получить значения (Currencies['RUB'], Currencies(840)) а меня однообразно (может это преимущество или недостаток)))

assert digit_mapping['two'] == 2
assert digit_mapping[2] == 'two'
assert digit_mapping['2'] == 'two'

я наверное не знал что это бимап называтся, того и не нашел нечего))). Но все ровно было интересно по изобретать

кстати да, спасибо, не подумал об этом. Хотя может список отдавать значений, чтобы потом выбрать можно было. но тогда не понятно будет что ожидать, или значение или список, проверки дополнительные со значение проводить. Есть еще над чем подумать

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

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

Я же написал что создаю модель ответа, чтобы Провайдер мог работать с любыми библиотеками, не только requests. Например aiohttp отдает текст как response.text(), ну и не зависеть от методов response всех библиотек. Клиент будет точно отдавать response какой ожидает провайдер

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Software Architect
Senior
Git
Python
SQL
OOP
Database
REST
Django
Celery
SQLalchemy
Fastapi