zonelistλ₯Ό λ€μκ³Ό κ°μ λ°μ΄ν° κ΅¬μ‘°λ‘ μ€μ ν©λλ€.
[{'zones': ['pe.com', 'ps.de', 'p-s.de'], 'file': 'gm'},
{'zones': ['p-e.net', 'ps.net', 'p-s.net'], 'file': 'grpc'}]
zonelist|map(attribute='file')μ μ¬μ©ν λ λ€μκ³Ό κ°μ λ¬Έμμ΄μ΄ λ°νλ©λλ€.
<generator object do_map at 0x10bd730>
μμλλ λμμ zonelistμ 'file' μμ±μ ν¬ν¨νλ λͺ©λ‘μ λ°ννλ κ²μ λλ€.
ν΄κ²° λ°©λ²μ΄ μλ κ²μΌλ‘ λ°νμ‘μ΅λλ€. μλ₯Ό λ€μ΄ zonelist|map(attribute='file') |list λλ zonelist|map(attribute='file') |sort λ₯Ό μ¬μ©νλ©΄ μμ λͺ©λ‘μ΄ μμ±λ©λλ€.
[gm, grpc]
Ansible 1.4.3κ³Ό ν¨κ» Jinja 2.7.1μ μ¬μ©νκ³ μμ΅λλ€.
μ΄κ²μ λ²κ·Έκ° μλλλ€. JSONμ μΆλ ₯νλ €κ³ ν©λκΉ?
μ, λ΄ μμμ map()μ΄ λͺ©λ‘μ λ°ννλ€λ κ²μ λλ€. κ·Έλ¦¬κ³ λ²κ·Έκ° μλκ°μ? μ¦, map()μ |join λλ |listμ κ°μ λ€λ₯Έ νν°κ° μΆκ°λ μ€κ° κΈ°λ₯μΌλ‘λ§ μ¬μ©λμ΄μΌ ν©λκΉ? ν . λ¬Έμμ λͺ μμ μΌλ‘ λͺ μλμ΄μΌ ν μλ μμ΅λλ€.
Javascriptμ μ§μ 곡κΈνκΈ° μν΄ μμμ Python κ°μ²΄μ repr
λ₯Ό μΈμν΄μλ μ λ©λλ€. κ·νμ κ²½μ° λ΄μ©μ λ°λΌ μ΄μ΄ μ’μ κ²μ²λΌ 보μμ§λ§ μ€μ λ‘ μ ν¨νμ§ μμ JSONμ μ»μ μ μμΌλ©° ν° λ³΄μ κ²°ν¨μ΄ λ μλ μμ΅λλ€. list
λ° tojson
νν°λ₯Ό μΆκ°νμ¬ μ ν¨ν JSONμ κ°μ Έμ€κ±°λ κ°μ²΄λ₯Ό JSONμΌλ‘ μΈμ½λ©ν μ μλ κ²½μ° μμΈλ₯Ό κ°μ Έμ΅λλ€.
λλΆλΆμ Python λ΄μ₯ ν¨μμ repr
κ° JSON λ°©μμ΄λΌλ μ¬μ€μ μ°μ°μ΄ μλμ§λ§ reprμ μ€μ νλ‘κ·Έλ¨ λ
Όλ¦¬μ μμ‘΄ν΄μΌ νλ κ²μ΄ μλλλ€.
λν map
κ° μνμ€λ³΄λ€ λ ꡬ체μ μΈ κ²μ λ°ννλ€λ κ²μ μμνλ Jinja λ¬Έμμ μ΄λ κ³³μμλ λ³Ό μ μμ΅λλ€.
μΌλ°μ μΌλ‘ λ°λ³΅μμλ§ μ¬μ©λλ μ΄λ¬ν κΈ°λ₯μ μ±λ₯μ΄ μ νλ μ μμΌλ―λ‘ μ΄κ²μ λ³κ²½νκ³ μΆμ§ μμ΅λλ€. |list
μμ ν©λλ€.
<generator object do_map at 0xdeadbeef>
λ¬Έμ μ λν {{ ... | list }}
μ루μ
μ λν΄ μμ§ λͺ»νμ΅λλ€.
μ κ³ ν΄ μ£Όμ μ κ°μ¬ν©λλ€!
κ°μ₯ μ μ©ν λκΈ
μΌλ°μ μΌλ‘ λ°λ³΅μμλ§ μ¬μ©λλ μ΄λ¬ν κΈ°λ₯μ μ±λ₯μ΄ μ νλ μ μμΌλ―λ‘ μ΄κ²μ λ³κ²½νκ³ μΆμ§ μμ΅λλ€.
|list
μμ ν©λλ€.