/ / JSONのオブジェクト配列のYAMLに相当する - json、yaml

JSONのオブジェクト配列のYAML相当 - json、yaml

私はYAMLに変換しようとしているオブジェクトのJSON配列を持っています。

{"AAPL": [
{
"shares": -75.088,
"date": "11/27/2015"
},
{
"shares": 75.088,
"date": "11/26/2015"
},
]}

YAMLに相当する表現がありますか?これはJSONだけではありませんか?

AAPL:
- :
shares: -75.088
date: 11/27/2015
- :
shares: 75.088
date: 11/26/2015

しかし私が思いついた最もクリーンなものは

AAPL:
- {
shares: -75.088,
date: 11/27/2015
}
{
shares: 75.088,
date: 11/26/2015
}

回答:

回答№1の117

TL; DR

あなたはこれを求めている:

AAPL:
- shares: -75.088
date: 11/27/2015
- shares: 75.088
date: 11/26/2015

マッピング

JSONオブジェクトのYAMLに相当するものはマッピングであり、次のようになります。

# flow style
{ foo: 1, bar: 2 }
# block style
foo: 1
bar: 2

ブロック・マッピング内のキーの最初の文字は、同じ列になければならないことに注意してください。デモを行うには:

# OK
foo: 1
bar: 2
# Parse error
foo: 1
bar: 2

シーケンス

YAMLのJSON配列に相当するものはシーケンスです。どちらかのように見えます(これは同等です):

# flow style
[ foo bar, baz ]
# block style
- foo bar
- baz

ブロックシーケンスでは、 -sは同じ列になければなりません。

JSONからYAMLへ

あなたのJSONをYAMLに変えましょう。あなたのJSONはここにあります:

{"AAPL": [
{
"shares": -75.088,
"date": "11/27/2015"
},
{
"shares": 75.088,
"date": "11/26/2015"
},
]}

些細な点として、YAMLはJSONのスーパーセットなので、上記は既に有効なYAMLですが、実際にはYAMLの機能を使用してこれをよりきれいにしましょう。

内側から順に、次のようなオブジェクトがあります。

{
"shares": -75.088,
"date": "11/27/2015"
}

同等のYAMLマッピングは次のとおりです。

shares: -75.088
date: 11/27/2015

配列の中に2つあります(シーケンス)。

  • 株式:-75.088 日付:2015年11月27日
  • 株式:75.088 日付:2015年11月26日

どのように -上のようになり、マッピングキーの最初の文字が並んでいます。

最後に、このシーケンス自体がキーによるマッピングの値です AAPL

AAPL:
- shares: -75.088
date: 11/27/2015
- shares: 75.088
date: 11/26/2015

これを解析してJSONに変換すると、期待される結果が得られます。

{
"AAPL": [
{
"date": "11/27/2015",
"shares": -75.088
},
{
"date": "11/26/2015",
"shares": 75.088
}
]
}

あなたはそれを見ることができます(そして対話的に編集することができます) ここに.