Как использовать текстовый файл CFS_Config для создания каталогов пути для автоматической генерации текстовых файлов в python? - PullRequest
0 голосов
/ 04 октября 2018

Ниже приведены данные в CFS_Config.txt.Этот текстовый файл должен знать, где хранятся документы, и избегать жестких кодов в программе.Например, если программа перемещена в другое окружение, нам нужно только изменить пути к каталогам в файле CFS_Config.txt.

Folder Path = ../dataprep/source_documents
ED Notes name = ED Notes
ED Notes output = ../dataprep/ED_Notes

Это приведенное ниже кодирует в файле Python то, что фактически делает, чтобы прочитатьКонфигурация из CFS_Config.txt, упомянутого ранее, а также для создания автоматически сгенерированного текстового файла.Возникла проблема в том, что мне сказали, что путь ../dataprep/ED_Notes не найден.Пожалуйста, посмотрите на коды, если вам нужно больше кодов, я постараюсь предоставить, спасибо !!!: ((

from preprocessing import ednotes_extractor
import os

def read_config():

    # open existing file to read configuration
    cfs_config_txt = open("..\CFS_Config.txt", "r")

    file_list = []
    root_dir = ""
    ednotes_name = ""
    ednotes_output = ""

    for line in cfs_config_txt:
        file_list.append(line)

    if "Folder Path = " in file_list[0]:
        root_dir = str(file_list[0])
        root_dir = root_dir.replace("Folder Path = ", "")
        root_dir = root_dir.replace("\n", "")

    if "ED Notes name = " in file_list[1]:
        ednotes_name = str(file_list[1])
        ednotes_name =  ednotes_name.replace("ED Notes name = ", "")
        ednotes_name =  ednotes_name.replace("\n", "")

    if "ED Notes output = " in file_list[2]:
        ednotes_output = str(file_list[2])
        ednotes_output = ednotes_output.replace("ED Notes output = ", "")
        ednotes_output = ednotes_output + ".txt"
        ednotes_output = ednotes_output.replace("\n", "")

    return root_dir, ednotes_name, ednotes_output



def convert_txt(choices):

    root_dir, ednotes_name, ednotes_output = read_config()

    if(choices == 1):

        # open new file to write string data textfile
        text_file = open(ednotes_output, 'w', encoding='utf-8')
        text_file.write("cat_id|content\n")

        for filename in os.listdir(root_dir):
            source_directory = root_dir + '/' + filename
            arr = ednotes_extractor.get_ednotes(source_directory)

            # open existing file to append the items in the array to the previously written textfile
            text_file = open(ednotes_output, 'a', encoding='utf-8')
            for item in arr:
                text_file.write("%s\n" % item)


    elif(choices==2):
        print("Hi")
...