昨日のこの記事の続き。
不格好だけれど、配列(pythonではlist)をサポートした。
| name | description |
|---|---|
xs/0/ |
xs[0] の意味 |
xs/-1/ |
xs[-1] の意味 |
xs// |
xs.append の意味 |
例
最終的な値が配列の場合
$ dictknife mkdict xs/ a xs/ b xs/ c
{
"xs": [
"a",
"b",
"c"
]
}
最終的な値がオブジェクトの配列の場合
$ dictknife mkdict xs//name a xs//name b xs//name c
{
"xs": [
{
"name": "a"
},
{
"name": "b"
},
{
"name": "c"
}
]
}
オブジェクトが複数のフィールドを持った場合
$ dictknife mkdict xs//name a xs/-1/age 20 xs//name b xs/-1/age 10
{
"xs": [
{
"name": "a",
"age": 20
},
{
"name": "b",
"age": 10
}
]
}
まじめに全部indexを指定しても良い。
$ dictknife mkdict xs/0/name a xs/0/age 20 xs/1/name b xs/1/age 10
{
"xs": [
{
"name": "a",
"age": 20
},
{
"name": "b",
"age": 10
}
]
}
添字で位置を指定して生成も可能
$ dictknife mkdict xs/1/name a xs/1/age 20 xs/0/name b xs/0/age 10
{
"xs": [
{
"name": "b",
"age": 10
},
{
"name": "a",
"age": 20
}
]
}
余ったものは空オブジェクト
$ dictknife mkdict xs/5/name a xs/5/age 20
{
"xs": [
{},
{},
{},
{},
{},
{
"name": "a",
"age": 20
}
]
}
変数と一緒に使う
$ dictknife mkdict @xs/0/name a @xs/0/age 20 @xs/1/name b @xs/1/age 10 names/ "&xs/0/name" names/ "&xs/1/name"
{
"names": [
"a",
"b"
]
}