2014-09-26 5 views
2

YAML 파일에 내장 된 파이썬 코드를 실행할 수 있는지 궁금합니다. 예를 들어, 내 YAML 파일은 현재 목록이 포함되어YAML 파일에 임베디드 파이썬 코드

list: [1,2,3,4] 

을하지만 NumPy와 사용하여 내 YAML 파일에서이 목록을 입력하는 것을 선호 것 :

list: np.arange(1,5) 

나는 "How to embed Python code into YAML?는"삽입하는 방법을 설명했다 리터럴 스칼라 블록 스타일을 사용하는 파이썬 코드이지만 실제로 임베디드 코드를 실행하는 방법은 설명하지 않습니다.

+0

참고 : ['eval'] (https://docs.python.org/2/library /functions.html#eval) 및 ['exec'] (https://docs.python.org/2/reference/simple_stmts.html#exec). –

답변

4

가능합니다. 다음 Python 스크립트는 YAML 파일의 이름이 data.yml 인 경우 제공됩니다. 또한

import yaml 
with open("data.yml", "r") as f: 
    data = yaml.load(f) 
exec data['list'] 

YAML 파일에 파이썬 코드에서 수입을 추가해야합니다 :

list: | 
    import numpy as np 
    print np.arange(1,5) 
관련 문제