외부 파일을 기반으로 다른 파이썬 스크립트를 생성하는 python 스크립트를 작성하고 있습니다. 내 코드의 작은 부분을 아래에서 볼 수 있습니다. 필자는 이러한 종류의 스크립트에 대한 많은 예제를 접한 적이 없으므로 최선의 방법이 무엇인지 궁금해하고있었습니다.Python에서 텍스트 생성을위한 유용한 정보
코드 예제의 마지막 두 줄에서 알 수 있듯이 내가 사용하고있는 기술은 때때로 다루기 힘들 수 있습니다.
SIG_DICT_NAME = "sig_dict"
SIG_LEN_KEYWORD = "len"
SIG_BUS_IND_KEYWORD = "ind"
SIG_EP_ADDR_KEYWORD = "ep_addr"
KEYWORD_DEC = "{} = \"{}\""
SIG_LEN_KEYWORD_DEC = KEYWORD_DEC.format(SIG_LEN_KEYWORD, SIG_LEN_KEYWORD)
SIG_BUS_IND_KEYWORD_DEC = KEYWORD_DEC.format(SIG_BUS_IND_KEYWORD,
SIG_BUS_IND_KEYWORD)
SIG_EP_ADDR_KEYWORD_DEC = KEYWORD_DEC.format(SIG_EP_ADDR_KEYWORD,
SIG_EP_ADDR_KEYWORD)
SIG_DICT_DEC = "{} = dict()"
SIG_DICT_BODY_LINE = "{}[{}.{}] = {{{}:{}, {}:{}, {}:{}}}"
#line1 = SIG_DICT_DEC.format(SIG_DICT_NAME)
#line2 = SIG_DICT_BODY.format(SIG_DICT_NAME, x, y, z...)
매우 궁금합니다. 어떤 문제를 해결하려고합니까? 즉, 생성하려고하는 코드는 무엇입니까? –
모범 사례는 [함수, 클래스,'hasattr' /'getattr', 메타 클래스] (https://github.com/lihaoyi/macropy#levels-of-magic) *와 같은보다 구조화 된 덜 마법적인 메소드를 사용하는 것입니다. * 당신은 텍스트 생성에 대해 생각합니다. – jfs
@HughBothwell 외부 파일은 특정 색인의 일부 버스에있는 디지털 신호 목록입니다. 이 파일은 최대 색인 또는 최대 버스 주소와 같은 일부 제한 조건을 준수하지만 신호 이름, 버스 및 색인이 변경 될 수 있습니다. 외부 파일을 구문 분석 할 수있는 파이썬을 생성하고 신호 이름을 해당 특성 (버스, 색인, 향후 다른 어떤 것)에 매핑하는 사전을 작성하고 신호를 설정하거나 읽는 각 신호에 대한 함수를 작성하려고합니다 . – jwp36