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 слични објави

Пребарај: #christopherhogwood

当前筛选 #christopherhogwood清除筛选
🎼 CLÁSICA AL ATARDECER 🎻

@ClasicaAlAtardecer · Post #5531 · 02.04.2022 г., 18:32

#Sinfonía8#Haydn#ChristopherHogwood Título:La Sinfonía n.º 8 en sol mayor Autor:Franz Joseph Haydn Movimientos: 🎵 00:00 I. Allegro molto, 3/8 🎵 05:27 II . Andante en do mayor, 2/4 🎵 16:53 III. Menuetto y Trio, 3/4 🎵 21:45 IV. La tempesta: Presto, 6/8 Interpretación: La Academia de Música Antigua. Director: Christopher Hogwood Fuente:🎼 @ClasicaAlAtardecer

🎼 CLÁSICA AL ATARDECER 🎻

@ClasicaAlAtardecer · Post #5530 · 02.04.2022 г., 18:32

​​#Sinfonía8#Haydn#ChristopherHogwood LA SINFONÍA N.º 8 EN SOL MAYOR La Sinfonía n.º 8 en sol mayor, Hoboken I/8, del compositor austríaco Joseph Haydn es la tercera sinfonía escrita tras haberse unido a la corte de los Esterházy en 1761, en la transición entre el Barroco y el Clasicismo. Es la tercera de la trilogía de sinfonías, que se llaman Le matin (n.º 6.), Le midi (n.º 7) y Le soir (n.º 8). La orquestación de la sinfonía n.º 8 es muy similar a la de un concerto grosso del barroco, donde un pequeño grupo de instrumentos solistas destaca sobre todo el conjunto. En la sinfonía n.º 8, el grupo de solistas consta de un violonchelo y dos violines y el grupo mayor contiene dos oboes, una flauta, dos trompa, cuerdas, fagot y clavecín. El uso que Haydn hace del fagot y del clavecín recuerda al bajo continuo empleado continuamente durante el Barroco; sin embargo no lo usa en toda la obra. Esta sinfonía tiene el número de movimientos que será habitual en las sinfonías clásicas (en la tónica de sol mayor a no ser que se indique otra cosa): 🎵I. Allegro molto, 3/8 🎵 II . Andante en do mayor, 2/4 🎵 III. Menuetto y Trio, 3/4 🎵 IV. La tempesta: Presto, 6/8 El primer movimiento es una Giga (danza) en la forma sonata y emplea una melodía de una canción de la ópera de Gluck Le diable à quatre llamada "Je n’aimais pas le tabac beaucoup (No me gustó mucho el tabaco)”.​ El último movimiento, también en forma sonata, subtitulado La tempesta, intenta mostrar la sensación de una tormenta. En el primer movimiento, las cuerdas empiezan con una melodía principal de ocho compases, un tema que se repite durante todo el movimiento. Haydn hace uso del formato del concerto grosso en el segundo movimiento, con la melodía en el concertino, los dos violines y el violonchelo solistas. La melodía del minueto es bastante simple, con el fagot y las cuerdas llevando el tema en el trío. En el movimiento final, La tempesta (la tormenta), las cuerdas tienen varias figuras descendentes que sugieren la lluvia al caer, y saltos de octava en el violín se usan para crear tensión. Hay una interesante anécdota sobre el tema de la flauta en este movimiento: cuando Haydn describe una tormenta en el último movimiento del oratorio Las estaciones, usa el mismo tema como en este movimiento, con la misma orquestación: un pasaje en la flauta con arpegios descendentes. @ClasicaAlAtardecer