I次のPythonありますPyYAMLとYAMLのload_all
class Instrument:
def quandl_get(self):
return quandl.get(self.quandl)
def yaml_load_all(name):
with open('yaml/' + str(name) + '.yaml', 'r') as ymlfile:
return list(yaml.load_all(ymlfile))
instruments = yaml_load_all("instruments")
そして、次のYAML:私は何をしたいことは
!!python/object:v.Instrument
vstoxx:
fractional_contracts: False
multiplier: 100
slippage: 0.0017
per_contract_cost: 0.0211
quandl: 'CHRIS/EUREX_FVS1'
---
!!python/object:v.Instrument
corn:
multiplier: 5000
symbol: 'zc'
months_traded: [3, 5, 7, 9, 12]
quandl: 'CHRIS/CME_C2'
forecasts: ['ewmac']
楽器の辞書があるので、私はinstruments['vstoxx'].quandl_get()
を行うことができますが。
YAMLファイルで毎回!!python/object:v.Instrument
を繰り返すことはしません。
現在、私は楽器のリストを取得しています。私は2つのステップを実行し、オブジェクトをリストにロードして、それを辞書にマッピングする必要があると思います。それは本当にきれいな方法ですか?