# 正确示例:显式类型注解 import os from pydantic import BaseModel class User(BaseModel): id: int # 显式指定int类型 name: str # 显式指定str类型 is_active: bool = True # 带默认值的类型注解 # 错误示例:缺少类型注解 # class BadUser(BaseModel): # id = 1 # 缺少类型注解,Pydantic 2.9+将报错 # name = "John" # 缺少类型注解,Pydantic 2.9+将报错 os.environ['app_port'] = '8888' # 环境变量自动映射示例 from pydantic_settings import BaseSettings, SettingsConfigDict class AppConfig(BaseSettings): host: str = "localhost" port: int = 8000 model_config = SettingsConfigDict( env_prefix="APP_", # 环境变量前缀 case_sensitive=False # 不区分大小写 ) # 当环境变量存在APP_PORT=8080时 config = AppConfig() print(config.port) # 输出: 8080 (而非默认的8000)