我想将元组(列表)映射到 pydantic 模型。
在以下情况下是否有将元组索引映射到属性的最佳实践?
from pydantic import BaseModel
class Ohlc(BaseModel):
close_time: float
open_time: float
high_price: float
low_price: float
close_price: float
volume: float
quote_volume: float
data = [
1495324800,
232660,
242460,
231962,
242460,
231.863,
0
]
Run Code Online (Sandbox Code Playgroud)
假设data的长度始终等于模型中的字段数,您可以使用__fields__它来实现这一点。
Ohlc(**{key: data[i] for i, key in enumerate(Ohlc.__fields__.keys())})
Run Code Online (Sandbox Code Playgroud)
(过去需要fields您首先使用construct(),但现在它已被弃用,现在他们告诉您改为使用__fields__)。