我想创建一个数据类实例并在以后提供值。
我该怎么做?
def create_trade_data():
trades = []
td = TradeData()
td.Symbol='New'
trades.append(td)
return trades
DataClass:
from dataclasses import dataclass
@dataclass
class TradeData:
Symbol : str
ExecPrice : float
答案 0 :(得分:2)
您必须通过赋予属性默认值None
from dataclasses import dataclass
@dataclass
class TradeData:
Symbol: str = None
ExecPrice: float = None
然后您的create_trade_data
函数将返回
[TradeData(Symbol='New', ExecPrice=None)]
现在,我选择None
作为默认值以指示内容不足。当然,您可以像其他答案一样选择更合理的默认值。
答案 1 :(得分:1)
from dataclasses import dataclass
@dataclass
class TradeData:
Symbol : str = ''
ExecPrice : float = 0.0
使用=运算符可以分配默认值。 有field方法用于可变值,例如list。