TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #397 · 12 ное.

Использование Pydantic сегодня стало нормой, и это правильно. Но иногда на ревью вижу, что используют его не всегда корректно. Например, метод BaseModel.model_dump() по умолчанию не преобразует стандартные типы, такие как datetime, UUID или Decimal, в простой сериализуемый для JSON вид. Тогда пишут кастмоный сериализатор для этих типов чтобы функция json.dump() не падала с ошибкой. import uuid from datetime import datetime from decimal import Decimal from uuid import UUID from pydantic import BaseModel class MyModel(BaseModel): id: UUID date: datetime value: Decimal obj = MyModel( id=uuid.uuid4(), date=datetime.now(), value='1.23' ) print(obj.model_dump()) # не подходит для json.dump # { # 'id': UUID('4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1'), # 'date': datetime.datetime(2025, 12, 12, 12, 12, 12, 111111), # 'value': Decimal('1.23') # } # добавляем свой кастомный сериализатор json.dumps(obj.model_dump(), cls=MySerializer) # { # 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1', # 'date': '2025-12-12T12:12:12.111111', # 'value': '1.23' # } В данном случае класс MySerializer обрабатывает datetime, UUID и Decimal. Например так: class MySerializer(json.JSONEncoder): def default(self, o): if isinstance(o, Decimal): return str(o) elif isinstance(o, datetime): return o.isoformat() elif isinstance(o, UUID): return str(o) return super().default(o) Специально для тех, кто всё еще так делает - в этом нет необходимости! Pydantic может это сделать сам, просто нужно добавить параметр mode="json". json.dumps(obj.model_dump(mode="json")) # { # 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1', # 'date': '2012-12-12T12:12:12.111111', # 'value': '1.23' # } #pydantic#libs

Резултати

Пронајдени 2 слични објави

Пребарај: #nogay

当前筛选 #nogay清除筛选
Tibicen

@world_music_geek · Post #648 · 06.06.2024 г., 12:05

Älibiy Romanov — Yiraw: Nogay Heroic and Lyrical Songs (Ored Recordings, 2024) #field_recording#traditional#kobyz#dombra#nogay#Russia История альбома началась еще в 2015 году, когда была записана музыка Алибия Романова. К сожалению, выпуск постоянно откладывался, и в 2021 году Алибий трагически погиб в автокатастрофе, так и не увидев своего альбома. Акын в тюркской традиции — это сказитель, не просто хранитель и передатчик устной поэзии и эпических текстов, но прежде всего создатель новых произведений и мастер импровизации. Таким себя считал Алибий Романов, и так его воспринимали в прессе и на сцене. Алибий использовал каноны традиционной ногайской музыки, создавая на их основе новые наигрыши и мелодии, которые сопровождались стихами и сказаниями. Тем не менее, специалисты считают, что его точнее было бы называть «йырав» — исполнителем песен. На альбом попало несколько песен, как традиционных, так и сочиненных Алибием, в основу которых лег его личный опыт и преживания: ✦ Ävelgide — это героическая песня, написан на слова исторической поэмы ногайского поэта Суюна Капаева «Йойтпадылар шебер-шешен тиллерин». ✦ Men Köremen — основана на песне средневекового ногайского поэта Шал-Кийиза Тиленши улы «Мен коьремен». В ней поется о землях Ногайской Орды на момент начала XVI века и о том, как поэт, «поднимаясь на великий Эльбрус, видит необъятные ногайские владения», и как он горд в этот момент. ✦ Qobızım — это авторская песня Алибия Романова, где он поет как мастерил свой кобыз. ✦ Qanıyke — песня о дочери золотоордынского хана Тохтамыша и супруге эмира Эдиге — Канийке. Она была одной из первых женщин, совершивших хадж в Мекку, и стала известной в исламском мире XV века. ✦ Qatar Qaz — народная ногайская песня, воспевающая исконно ногайскую мелодию, рожденную на берегах Иртыша и Волги, исторических ногайских местах. ✦ Arip Kelip — авторская песня Алибия Романова, в которой он поет о своей матери, и том, как в любом возрасте каждому из нас нужна материнская забота и ласка. 🔗Spotify | AppleMusic | Bandcamp