python一些笔记

python一些笔记,第1张

Python - typing - Union
#Union[int, str] 表示既可以是 int,也可以是 str
vars: Union[int, str]
# 等价于
vars: [int or str]
 
 
vars: Union[int]
# 等价于
vars: int

Python - typing 模块 —— Union_小菠萝测试笔记的博客-CSDN博客 pydantic-Field

​Field 可用于提供有关字段和验证的额外信息,如设置必填项和可选,设置最大值和最小值,字符串长度等限制 ​

关于 Field 字段参数说明

  • Field(None) 是可选字段,不传的时候值默认为None
  • Field(…) 是设置必填项字段
  • title 自定义标题,如果没有默认就是字段属性的值
  • description 定义字段描述内容
address: TronAccountAddress = Field(description="Wallet address")
Option

如果一个数据类型不是必须的,可以允许用户在使用中不进行传入,则我们可以使用typing库中的Optional方法进行实现。

from typing import Optional
from pydantic import BaseModel

class Person(BaseModel):
    name: str
    age: Optional[int]

需要注意的是,设置为可选之后,数据中仍然会有age字段,但是其默认值为None,即当不传入age字段时,Person仍然可以取到age,只是其值为None

p = Person(name="Tom")
print(p.json()) # {"name": "Tom", "age": None}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/918903.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存