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

Резултати

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

Пребарај: #protectyourdata

当前筛选 #protectyourdata清除筛选
Google Facts™ [ ️@googlefactss🌎]

@googlefactss · Post #40261 · 06.12.2025 г., 04:30

Because we have seen an uptick in people trying to scam others allover the web, we like to remind everyone to stay safe online. Here are a few things that could in fact help you. ● Be careful what you click. Don’t open links or attachments from strangers or suspicious emails. ● Use strong passwords with letters, numbers, and symbols. ● Use a password manager to keep passwords safe and easy to use. ● Keep devices updated and use good antivirus software. ● Don’t share personal info like your address, birthday, real names, workplaces, or locations online. ● Think before you post—anything online can stay forever. ● Watch out for fake profiles and don’t trust people you don’t know. ● Teach kids to spot scams, avoid cyberbullying, and be polite online. ● Backup important data regularly to protect it from malware. ● Close old accounts you don’t use anymore. ● Only download apps or files from trusted sources. ● Use two-factor authentication (2FA) for extra security on your accounts. ● Avoid using public Wi-Fi for sensitive activities like banking. ● Log out from accounts when using shared or public devices. ● Don’t accept friend or follow requests from people you don’t know. ● Be cautious about what apps you allow to access your personal info or location. ● Report any suspicious or harmful behavior to the platform admins or an adult you trust. Stay alert, stay safe, and let’s keep our online community secure together! We know there is much more to it, feel free to share your wisdom or experiences in the comments. [Learn more1] [Learn more2] @googlefactss #OnlineSafety🔒#StaySafeOnline🌐#PasswordSecurity🔑#CyberSecurity🛡️#ProtectYourData📱 #TLDR😜