Файл: Разработка проекта для визуализации данных на языке Python.doc
Добавлен: 24.10.2023
Просмотров: 536
Скачиваний: 11
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
В работе были использованы следующие компоненты PyQt:
Рисунок 210 – 14 строки: функция, получающая текст из ячейки таблицы или пустую строку при отсутствии текста в ячейке, где входные параметры имя таблицы GUI и индексы ячейки (рисунок 3).Рисунок 315 – 21 строки: функция, заполняющая таблицу значениями из таблицы текущей БД, где входные параметры имя таблицы в БД, имя таблицы GUI, количество полей (столбцов) в таблице, j – счетчик строк, i – счетчик столбцов, row – выборка всех записей из таблицы БД (рисунок 4).Рисунок 423 строка: создание класса, который будет содержать операции для кнопок; 24 – 34 строки: инициализация входящих параметров класса – имя таблицы GUI, имя текстового поля, количество столбцов, имена раскрывающихся списков, имя таблицы текущей БД, списки с именами полей в БД и именами полей в таблице GUI, строка типа ‘?,?,…,?’ с количеством записей, имя ключевого поля; 35 и 36 строки: получение текущего количества записей в БД (рисунок 5).Рисунок 537 строка: создание функции в классе Operation для добавления записи, где arg – список значений новой строки; 38 и 45 строки: отключение сортировки на время добавления записи; 39 строка: создание новой строки в таблице GUI; 40 – 42 строки: добавление записи в БД и сохранение изменений; 43 и 44 строки: заполнение новой строки GUI соответствующими значениями из arg (рисунок 6).Рисунок 646 строка: создание функции в классе Operation для удаления записи; 47 и 48 строки: получение индекса выбранной строки и текста ключевого поля; 49 строка: удаление строки из таблицы GUI; 50 – 52 строки: удаление строки из таблицы БД и сохранение изменений (рисунок 7).Рисунок 753 – 58 строки: функция в классе Operation для внесения изменения в запись, где входящие параметры индексы изменяемой ячейки; функция вносит изменения в запись БД в соответствии с изменением значений в ячейках таблицы GUI и сохраняет изменения (рисунок 8).
Рисунок 859 – 69 строки: функция в классе Operation для поиска строк, производит поиск по вхождению подстроки в строку, отображает только те строки GUI, в ячейках которых нашлась искомая подстрока, остальные строки скрывает; k – флажок для строк, которые нужно отобразить; i – счетчик строк; j – счетчик столбцов (рисунок 9).Рисунок 970 – 72 строки: функция в классе Operation, сбрасывающая результаты поиска, отображает все строки в таблице GUI (рисунок 10).Рисунок 1073 строка: создание функции в классе Operation, которая будет проводить поиск по диапазону; k – флажок для строк, которые нужно отобразить; i – счетчик строк; t – значение, по которому проводится сравнение; t2 – значение ячейки, с которой проводится сравнение; 76 – 78 строки: определение номера столбца, по которому проводится сравнение, имя столбца выбирается пользователем в раскрывающемся списке cbox2, выбор знака сравнения выбирается пользователем в раскрывающемся списке cbox1; 79 – 86 строки: отображение всех строк GUI, значения ячеек которых по выбранному столбцу меньше указанного значения; 87 – 94 строки: отображение всех строк GUI, значения ячеек которых по выбранному столбцу больше заданного значения (рисунок 11).Рисунок 1197 строчка: создание функции, которая будет создавать модальное окно для добавления новой записи; 98 – 101 строчки: функция, которая считывает введенные в текстовые поля значения, вызывает функцию добавления записи класса Operation, передает в нее список значений и закрывает модальное окно (рисунок 12)Рисунок 12102 – 136 строки: тело функции Ins; 102 – 104 строки: создание модального окна, блокирующего основное; 105 и 122 – 135 строки: создание табличной разметки окна и размещение в ней элементов; 106 – 111 строки: создание текстовых полей для ввода значений новой записи; 112 – 117 строки: создание надписей, которые будут указывать названия колонок таблицы для текстовых полей; 118 – 121 строки: создание кнопки и установка вызова функции Ins0 на ее нажатие, после чего функция Ins0 запустит функцию добавления записи в таблицы БД и GUI; 136 строка: отображение модального окна (рисунок 13).
Рисунок 13138 – 141 строки: задание стартовых параметров БД – список имен колонок на русском языке, список имен полей БД, количество полей в БД, имя таблицы БД, текущее количество записей в БД (рисунок 14).Рисунок 14145 и 146 строки: создание основного окна для таблицы; 146 – 151 строки: создание и заполнение таблицы GUI, установка размеров ячеек и самой таблицы; 152 строка: включение встроенной в таблицу GUI сортировки по столбцам (рисунок 15).Рисунок 15153 – 163 строки: создание кнопок для управления таблицей (рисунок 16).Рисунок 16164 – 166 строки: создание раскрывающегося списка для выбора знака сравнения при поиске по диапазону; 167 – 169 строки: создание раскрывающегося списка для выбора столбца для поиска по диапазону; 170 строка: создание текстового поля для ввода значения для поиска (рисунок 17).Рисунок 17171 – 182 строки: создание табличной разметки окна и размещение в ней элементов; 183 строка: автоматическая установка размеров окна с учетом содержимого (рисунок 18).Рисунок 18184 строка: создание экземпляра класса Operation с нужными входными параметрами; 185 – 189: вызов функций по щелчку соответствующих им кнопок; 190 – 192 строки: вызов функции изменения соответствующих записей в БД при изменении ячейки таблицы с индексами i, j (рисунок 19).Рисунок 19193 строка: отображение основного окна; 194 строка: функция модуля sys для завершения программы; 195 строка: сохранение всех изменений в БД; 196 строка: закрытие соединения с БД (рисунок 20).
Рисунок 20ЗаключениеВ процессе работы были выявлены и рассмотрены основные особенности языка программирования Python:
-
окно; -
надпись; -
командная кнопка; -
однострочное текстовое поле; -
раскрывающийся список; -
менеджер компоновки; -
таблица.
Рисунок 210 – 14 строки: функция, получающая текст из ячейки таблицы или пустую строку при отсутствии текста в ячейке, где входные параметры имя таблицы GUI и индексы ячейки (рисунок 3).Рисунок 315 – 21 строки: функция, заполняющая таблицу значениями из таблицы текущей БД, где входные параметры имя таблицы в БД, имя таблицы GUI, количество полей (столбцов) в таблице, j – счетчик строк, i – счетчик столбцов, row – выборка всех записей из таблицы БД (рисунок 4).Рисунок 423 строка: создание класса, который будет содержать операции для кнопок; 24 – 34 строки: инициализация входящих параметров класса – имя таблицы GUI, имя текстового поля, количество столбцов, имена раскрывающихся списков, имя таблицы текущей БД, списки с именами полей в БД и именами полей в таблице GUI, строка типа ‘?,?,…,?’ с количеством записей, имя ключевого поля; 35 и 36 строки: получение текущего количества записей в БД (рисунок 5).Рисунок 537 строка: создание функции в классе Operation для добавления записи, где arg – список значений новой строки; 38 и 45 строки: отключение сортировки на время добавления записи; 39 строка: создание новой строки в таблице GUI; 40 – 42 строки: добавление записи в БД и сохранение изменений; 43 и 44 строки: заполнение новой строки GUI соответствующими значениями из arg (рисунок 6).Рисунок 646 строка: создание функции в классе Operation для удаления записи; 47 и 48 строки: получение индекса выбранной строки и текста ключевого поля; 49 строка: удаление строки из таблицы GUI; 50 – 52 строки: удаление строки из таблицы БД и сохранение изменений (рисунок 7).Рисунок 753 – 58 строки: функция в классе Operation для внесения изменения в запись, где входящие параметры индексы изменяемой ячейки; функция вносит изменения в запись БД в соответствии с изменением значений в ячейках таблицы GUI и сохраняет изменения (рисунок 8).
Рисунок 859 – 69 строки: функция в классе Operation для поиска строк, производит поиск по вхождению подстроки в строку, отображает только те строки GUI, в ячейках которых нашлась искомая подстрока, остальные строки скрывает; k – флажок для строк, которые нужно отобразить; i – счетчик строк; j – счетчик столбцов (рисунок 9).Рисунок 970 – 72 строки: функция в классе Operation, сбрасывающая результаты поиска, отображает все строки в таблице GUI (рисунок 10).Рисунок 1073 строка: создание функции в классе Operation, которая будет проводить поиск по диапазону; k – флажок для строк, которые нужно отобразить; i – счетчик строк; t – значение, по которому проводится сравнение; t2 – значение ячейки, с которой проводится сравнение; 76 – 78 строки: определение номера столбца, по которому проводится сравнение, имя столбца выбирается пользователем в раскрывающемся списке cbox2, выбор знака сравнения выбирается пользователем в раскрывающемся списке cbox1; 79 – 86 строки: отображение всех строк GUI, значения ячеек которых по выбранному столбцу меньше указанного значения; 87 – 94 строки: отображение всех строк GUI, значения ячеек которых по выбранному столбцу больше заданного значения (рисунок 11).Рисунок 1197 строчка: создание функции, которая будет создавать модальное окно для добавления новой записи; 98 – 101 строчки: функция, которая считывает введенные в текстовые поля значения, вызывает функцию добавления записи класса Operation, передает в нее список значений и закрывает модальное окно (рисунок 12)Рисунок 12102 – 136 строки: тело функции Ins; 102 – 104 строки: создание модального окна, блокирующего основное; 105 и 122 – 135 строки: создание табличной разметки окна и размещение в ней элементов; 106 – 111 строки: создание текстовых полей для ввода значений новой записи; 112 – 117 строки: создание надписей, которые будут указывать названия колонок таблицы для текстовых полей; 118 – 121 строки: создание кнопки и установка вызова функции Ins0 на ее нажатие, после чего функция Ins0 запустит функцию добавления записи в таблицы БД и GUI; 136 строка: отображение модального окна (рисунок 13).
Рисунок 13138 – 141 строки: задание стартовых параметров БД – список имен колонок на русском языке, список имен полей БД, количество полей в БД, имя таблицы БД, текущее количество записей в БД (рисунок 14).Рисунок 14145 и 146 строки: создание основного окна для таблицы; 146 – 151 строки: создание и заполнение таблицы GUI, установка размеров ячеек и самой таблицы; 152 строка: включение встроенной в таблицу GUI сортировки по столбцам (рисунок 15).Рисунок 15153 – 163 строки: создание кнопок для управления таблицей (рисунок 16).Рисунок 16164 – 166 строки: создание раскрывающегося списка для выбора знака сравнения при поиске по диапазону; 167 – 169 строки: создание раскрывающегося списка для выбора столбца для поиска по диапазону; 170 строка: создание текстового поля для ввода значения для поиска (рисунок 17).Рисунок 17171 – 182 строки: создание табличной разметки окна и размещение в ней элементов; 183 строка: автоматическая установка размеров окна с учетом содержимого (рисунок 18).Рисунок 18184 строка: создание экземпляра класса Operation с нужными входными параметрами; 185 – 189: вызов функций по щелчку соответствующих им кнопок; 190 – 192 строки: вызов функции изменения соответствующих записей в БД при изменении ячейки таблицы с индексами i, j (рисунок 19).Рисунок 19193 строка: отображение основного окна; 194 строка: функция модуля sys для завершения программы; 195 строка: сохранение всех изменений в БД; 196 строка: закрытие соединения с БД (рисунок 20).
Рисунок 20ЗаключениеВ процессе работы были выявлены и рассмотрены основные особенности языка программирования Python:
-
программное обеспечение; -
высокая скорость разработки; -
переносимость программ; -
библиотеки; -
широкие возможности применения; -
расширяемость; -
удобство использования; -
встроенные типы данных -
возможности использования классов.
-
большая база компонентов; -
красивый внешний вид компонентов; -
хорошая документация; -
универсальность.
-
удалить выбранную запись одним кликом кнопки; -
добавить новую запись посредством модального окна и нажатия двух кнопок; -
изменить запись двойным щелчком по таблице; -
выполнить поиск по ключевому слову или значению одним кликом соответствующей кнопки; -
выполнить поиск по диапазону меньше или больше ключевого значения с помощью выбора двух условий поиска и одного клика соответствующей кнопки; -
выполнить сортировку по выбранному полю щелчком на заголовок поля в таблице.