私はCSVファイルにデータを書き込むために必要なPython辞書オブジェクトを持っています。私はPythonプログラミングには新しいです。だから私は誰かが私を導くことができるかどうか疑問に思っていた。csv.DictWriterを使用してCSVにデータを書き込む
ここは私のオブジェクトです。
dict = [{u'interface': [{u'interface-down-reason': u'LACP Convergence Timeout',
u'interface-name': u'ethernet28:1',
u'leaf-group': u'R2',
u'member-type': u'',
u'mode': u'lacp',
u'op-state': u'down',
u'phy-state': u'up',
u'switch-name': u'R2L2'},
{u'interface-down-reason': u'LACP Protocol Initiated',
u'interface-name': u'ethernet28:1',
u'leaf-group': u'R2',
u'member-type': u'',
u'mode': u'lacp',
u'op-state': u'down',
u'phy-state': u'up',
u'switch-name': u'R2L1'}],
u'name': u'LACP-Test'},
{u'interface': [{u'interface-down-reason': u'None',
u'interface-name': u'ethernet54:4',
u'leaf-group': u'R1',
u'member-type': u'',
u'mode': u'static-auto-vswitch-inband',
u'op-state': u'up',
u'phy-state': u'up',
u'switch-name': u'R1L1'},
{u'interface-down-reason': u'None',
u'interface-name': u'ethernet54:4',
u'leaf-group': u'R1',
u'member-type': u'',
u'mode': u'static-auto-vswitch-inband',
u'op-state': u'up',
u'phy-state': u'up',
u'switch-name': u'R1L2'}],
u'name': u'LAX-K8-MASTER-NODE'}]
ご覧のとおり、複数のキー値のペアで構成され、一部のキーには辞書のリストがあります。
私は挑戦が、いくつかのフィールド名がキー「インターフェイス」の辞書内にあるあるしかし、私は
export_fields = ['name','interface-name', 'op-state', 'phy-state']
以下のようにフィールド名を含める、csv.Dictwiterを読んでてきました。
どのように私はこれを分離するので、私はCSVファイルに書き込むことができます。
誰かが論理を共有したり、私を導くことができれば、そこから取り出すことができます。
あなたの応答を感謝します。
'csv.DictWriter'を使用するためには、考えて、構造化データを提供しました既存のデータを入れ子のない単純な辞書のリストに変換する必要があります。 – larsks