2013-05-02 40 views
14

YAML'de iç içe geçmiş listeleri nasıl oluşturabilirim? Almak istediğim:yaml içinde iç içe geçmiş listeler

İşte
{"Hello": ["as", ["http://", ["cat"]]]} 

benim YAML ki (PyYAML birlikte) çalışmaz oluyor: Neyi yanlış yapıyorum

Hello: 
    - "as" 
     - "http://" 
     - cat 

?

** * ** * ** * Güncelleme: * ** * ** * ****

Özellikle ben YAML'den aşağıdaki JSON'u oluşturmaya çalışıyorum:

"URL" : { 
    "Description" : "URL of the website", 
    "Value" : { "Fn::Join" : [ "", [ "http://", { "Fn::GetAtt" : [ "ElasticLoadBalancer", "DNSName" ]}]]} 
} 

Çalıştığım en yakın YAML işte, ama ihtiyacım olanı tam olarak vermiyor.

YAML olduğunu Bunun neticesinde:

Outputs: 
    URL: 
     Description: URL of the website 
     Value: 
     "Fn::Join": 
     - "" 
     - "http://" 
     - "Fn::GetAtt": 
      - ElasticLoadBalancer 
      - DNSName 

:

"URL": { 
     "Description": "URL of the website", 
     "Value": { 
      "Fn::Join": [ 
       "", 
       "http://", 
       { 
        "Fn::GetAtt": [ 
         "ElasticLoadBalancer", 
         "DNSName" 
        ] 
       } 
      ] 
     } 
    } 

Bu neredeyse doğrudur, ancak "", iç içe bir listesi olmalıdır değil sadece başka Liste öğesinden sonra. Bunu nasıl düzeltebilirim?

Hello: 
    ["as", 
    ["http://", 
     [cat] 
    ] 
] 

Json çıkışı::

{ 
    "Hello": [ 
    "as", 
    [ 
     "http://", 
     [ 
     "cat" 
     ] 
    ] 
    ] 
} 

cevap

3

deneyin (PS Bu çıkış tamamen aynı olmalıdır böylece bir API beslenen olacak):

( ) http://pyyaml.org/wiki/PyYAMLDocumentation#YAMLsyntax - "blok sekansları iç içe olabilir")
+0

Merhaba, maalesef küme parantezleri takılıyorum - Kıvırcık parantezlere sahip olamam. Çıktı özellikle benim sorumu aldığım şey olmalıdır. – user1491250

+0

Sabit, bkz. Düzenlenmiş sürüm :) – Yohann

+0

Bunu yapamam. Bu derin iç içe geçmiş karmaşık bir yapıdır :-( – user1491250

İlgili konular