[英]How can I instantiate a new dataclass instance in Python without supplying parameters?
我想创建一个数据类实例并稍后提供值。
我怎样才能做到这一点?
def create_trade_data():
trades = []
td = TradeData()
td.Symbol='New'
trades.append(td)
return trades
数据类:
from dataclasses import dataclass
@dataclass
class TradeData:
Symbol : str
ExecPrice : float
你必须通过给它们一个默认值None
来使属性成为可选的
from dataclasses import dataclass
@dataclass
class TradeData:
Symbol: str = None
ExecPrice: float = None
然后您的create_trade_data
函数将返回
[TradeData(Symbol='New', ExecPrice=None)]
现在,我选择None
作为默认值来表示缺少内容。 当然,您可以像其他答案一样选择更合理的默认值。
from dataclasses import dataclass
@dataclass
class TradeData:
Symbol : str = ''
ExecPrice : float = 0.0
使用 = 运算符,您可以分配默认值。 有用于可变值的字段方法,如列表。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.