【发布时间】:2016-09-12 14:05:23
【问题描述】:
我有以下代码:
class Settings:
def __init__(self, annual_volatility_target):
self.annual_volatility_target = annual_volatility_target
self.daily = annual_volatility_target/np.sqrt(252)
def yaml_load(name):
with open('yaml/' + str(name) + '.yaml', 'r') as ymlfile:
return yaml.load(ymlfile)
settings = yaml_load("settings")
使用以下 YAML:
!!python/object:v.Settings
annual_volatility_target: 0.25
问题是,当我加载settings 时,settings.daily 没有设置。 settings.annual_volatility_target 是,不管我在__init__ 中是否这样说。
如果我手动实例化 Settings 对象(即不使用 PyYAML),它可以正常工作。
我做错了什么?
【问题讨论】:
-
虽然第二个答案对我来说似乎更容易,但第一个答案更完整并且包含有价值的数据。
-
@Srgrn 哪个是第一个,哪个是第二个?
-
我太傻了。你是第一个。