>

데이터를 파싱하는 프로그램을 만들고 있습니다. 내 사전이 상당히 길어지고 있습니다. 따라서 읽을 수있는 파일로 저장하고 싶습니다. 바람직하게는 xlsx이지만 txt 파일도 작동합니다. 프로그램 정리 외에도 추출 할 데이터에 따라 다른 사전을 호출 할 수 있습니다.

다음과 같은 사전 :

import re
import pandas as pd
my_Dict = {   
    'cat': re.compile(r'CAT (?P<cat>.*)\n'),  
    'dog': re.compile(r'DOG (?P<dog>.*)\n'),
    'mouse': re.compile(r'MOUSE (?P<mouse>.*)\n'),    
}

가장 쉽게 읽을 수 있도록 xlsx 또는 txt 형식으로 넣는 가장 좋은 형식은 무엇입니까? 그러면 사전으로 사용하기 위해 어떻게 읽습니까?

이 사전을 파일에 쓸 수 있었지만 방금 쓴 방식을 다시 읽지 못했습니다.

감사합니다!

  • 답변 # 1

    쉼표로 구분 된 값 (.csv) 파일을 권장합니다. 일반 텍스트 파일로 취급하거나 별 어려움없이 Excel에서 열 수 있습니다.

    당신의 명령은 다음과 같습니다 :

    cat, CAT (?P<cat>.*)\n
    dog, DOG (?P<dog>.*)\n
    mouse, MOUSE (?P<mouse>.*)\n
    
    

    읽는 한, 첫 번째 부분을 키로 사용하고 두 번째 부분을 값으로 사용하여 행을 반복하고 쉼표로 구분하면됩니다.

    my_dict = {}
    with open(filename) as f:
        for line in f:
            # Split the line on the comma
            split_line = line.split(',')
            # .strip() removes either specified characters or, if not argument is given,
            # leading and trailing whitespace
            my_dict[split_line[0].strip()] = re.compile(split_line[1].strip())
    
    
    

    그러나 정규 표현식이나 이름에 쉼표를 포함해야하는 경우이 작업이 중단됩니다. 이 경우 탭 구분 값 (.tsv) 파일이 작동 할 것입니다. ',' 에서 분리하는 대신 대신 '\t' 로 나눕니다. .

    이 둘 중 어느 것도 작동하지 않으면 거의 임의의 문자로 나눌 수 있지만 MS Excel은 .csv 및 .tsv 파일을 모두 인식하고 쉽게 열 수 있습니다.

관련 자료

  • 이전 유전자 알고리즘을 사용한 게스트 할당
  • 다음 ionic framework - "LocationAccuracy"이름을 찾을 수 없습니다