ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ГОРОДА МОСКВЫ ДОПОЛНИТЕЛЬНОГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ЦЕНТР ПРОФЕССИОНАЛЬНЫХ КВАЛИФИКАЦИЙ И СОДЕЙСТВИЯ ТРУДОУСТРОЙСТВУ «ПРОФЕССИОНАЛ» ОТЧЕТ О ВЫПОЛНЕНИИ ИТОГОВОЙ АТТЕСТАЦИОННОЙ РАБОТЫ на тему «Разработка программного приложения с использованием инструментов языка программирования Python» слушателя Ермакова Андрея Игоревича №: 0888-ГЗ программы повышения квалификации «Программирование на языке Python» Москва, 2021 Основная часть. 1. Постановка задачи. Задача итоговой аттестационной работы: разработка программного приложения посредством языка программирования Python. Назначение приложения: генерация адресов электронной почты, генерация паролей безопасности, сохранения сгенерированной информации. Программа должна обеспечивать возможность выполнения следующих функций: - считывание данных из файла, содержащего сведения о сотрудниках организации, - формирование на основе данных файла адресов корпоративной электронной почты для сотрудников организации, - генерация паролей безопасности для входа в корпоративную электронную почту, - внесение изменений в файл данных и его перезапись. 2. Основная часть. 2.1. Этапы разработки программного приложения. Разработка программного приложения заданного функционала включала следующие последовательные этапы: 1) Анализ и исследование задачи. Подбор переменных, определение последовательности применения операторов и функций. 2) Разработка или выбор алгоритма решения задачи. Определение типа алгоритма, выбор формы записи, проектирование алгоритма. 3) Разработка программы. Запись алгоритма на языке Python. Выполнение последовательностей операторов и функций на языке Python. 4) Тестирование работоспособности программы (отладка). компоновки Проверка программного кода на работоспособность, с последующим устранение ошибок программного кода при их выявлении. 5) Анализ результатов. Выявление соответствия функционала разрабатываемого программного приложения поставленной задаче. В ходе выполнения данных этапов был разработан нижеследующий код программы. Листинг 1. Исходный программный код. # Подключение модулей import random import re #Процедура генерации пароля def pass_gen(length): digits = '1234567890' leters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' leters_2 = 'abcdefghijklmnopqrstuvwxyz' symbols = '!@#$%^&*()-+' password = '' var = [digits, leters, leters_2, symbols] if length < 12: return print('Ошибка! Пароль должен иметь не менее 12 символов') else: password+=random.choice(digits) password+=random.choice(leters) password+=random.choice(leters_2) password+=random.choice(symbols) while len(password) < length: password+=random.choice(var[random.randint(0,3)]) return password def email_gen(list_of_names): emails = [] for i in list_of_names: letter = 1 while i[1] + '.' + i[0][0:letter] + '@company.io' in emails: letter+=1 emails.append(i[1] + '.' + i[0][0:letter] + '@company.io') return emails strings = [] failed = [] list_of_names = [] n = 0 k = 1 p = 1 f = open('task_file.txt', 'r') for i in f: strings.append(i.split(',')) f.close() for i in range(len(strings)): for j in range(len(strings[i])): strings[i][j]=strings[i][j].replace(' ','') for i in range(len(strings)): if re.findall(r'^$|\W|\d|NAME', strings[i][1]) or re.findall(r'[wrtplkhgfdszxcvbnm][wrtplkhgfdszxcvbnm][wrtplkhgfd szxcvbnm][wrtplkhgfdszxcvbnm]', strings[i][1]) or re.findall(r'^$|\W|\d|NAME', strings[i][2]) or re.findall(r'0......|\D|^$', strings[i][3]) or len(strings[i][3]) != 7 or re.findall(r'\W+\n$|\d|^$', strings[i][4]): failed.append(i) else: list_of_names.append([strings[i][1],strings[i][2]]) emails = email_gen(list_of_names) f_1 = open('task_file.txt', 'w') f_2 = open('task_file_1.txt', 'w') f_1.write(' ' + 'EMAIL, PASSWORD, LAST_NAME, TEL, CITY\n') for i in range(len(strings)): if i not in failed: f_1.write(str(k)+'. ' + emails[n]+', '+pass_gen(12)+', '+strings[i][1]+', '+strings[i][2]+', '+strings[i][3]+', '+strings[i][4]) f_1.write("_" * 85+'\n') k+=1 n+=1 else: f_2.write(str(p)+'. ' + strings[i][1]+', '+strings[i][2]+', '+strings[i][3]+', '+strings[i][4]) p+=1 f_2.write("_" * 85+'\n') f_1.close() f_2.close() 2.2.. Вывод о работоспособности программного приложения.. По результату выполнения этапа отладки программного кода сделан вывод, что разработанный исходный программный код работоспособен, выполнен без синтаксических, семантических и логических ошибок. Список литературы. 1. Гуриков, С.Р. Основы алгоритмизации и программирования на Python. Учебное пособие. Гриф МО РФ / С.Р. Гуриков. - М.: Инфра-М, Форум, 2018. - 707 c. 2. Гэддис Т. Начинаем программировать на Python. – 4-е изд.: Пер. с англ. – СПб.: БХВ-Петербург, 2019. – 768 с. 3. Любанович Билл Простой Python. Современный стиль программирования. – СПб.: Питер, 2016. – 480 с. 4. Федоров, Д. Ю. Программирование на языке высокого уровня Python : учебное пособие для прикладного бакалавриата. – Москва : Издательство Юрайт, 2019. – 161 с.