Чтение и запись файла CSV с использованием выпадающего списка в Python - PullRequest
0 голосов
/ 21 ноября 2018

Я хочу создать графический интерфейс для чтения и записи CSV-файлов.На основе выходного файла я создаю другой графический интерфейс для построения графиков.Я использую pyQt4.Там в папке 6 файлов.Я хочу прочитать все файлы с одинаковым именем и записать их в файл "out.csv"Затем другой графический интерфейс будет отображаться из "out.csv".

Мой код:

def update(self):

        cat1 = self.dropdown1.currentText()

        counter = 1

        for folder, sub_folders, files in os.walk(my_directory):
            for cat1 in files:
                if cat1 == 'iono_tropo.csv':
                    file_path = os.path.join(folder, 'iono_tropo.csv')
                elif cat1 == 'PR_log.csv':
                    file_path = os.path.join(folder, 'PR_log.csv')
                elif cat1 == 'Satellite_info.csv':
                    file_path = os.path.join(folder, 'Satellite_info.csv')
                elif cat1 == 'Sol_1.csv':
                    file_path = os.path.join(folder, 'Sol_1.csv')
                elif cat1 == 'Sol_2.csv':
                    file_path = os.path.join(folder, 'Sol_2.csv')
                else:
                    file_path = os.path.join(folder, 'Sol_3.csv')

                    with open(file_path) as read_file:
                        print('Reading csv file' + str(counter))
                        if counter == 1:
                            lines = read_file.readlines()
                        else:
                            lines += read_file.readlines()[1:]

                            with open ("out.csv","w") as f:
                                for line in lines:
                                    f.write(line)

                        counter += 1

Скрипт показывает ошибку, поскольку в my_directory нет файла "Sol_3.csv".Теперь, если я изменю else на elif cat1 == 'Sol_3.csv', он создаст "out.csv", читая только Sol_3.Другой файл не читает.Я новичок в программе Python.Когда я запускаю код отдельно (не в GUI), он работает.Но здесь это ничего не показывает.Помогите, пожалуйста.Заранее спасибо.

...