МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное бюджетное образовательное учреждение высшего образования «Российский экономический университет имени Г.В. Плеханова» Московский приборостроительный техникум Отчёт о выполнении практической работы № 2 «Операторы ввода-вывода в Python» Дисциплина: МДК.01.04 Системное программирование Специальность: 09.02.07 Информационные системы и программирование Выполнил: Студент: Кузьмин Степан Ильич Группа: БД50-1-21 Дата: «31» октября 2023 г. Проверил: Преподаватель: Голубев Дмитрий Дмитриевич Дата: «___»___________2023 г. Содержание Введение ................................................................................................................... 3 Цель работы ............................................................................................................. 5 Ход работы ............................................................................................................... 6 Задание №1 ........................................................................................................... 6 Задание №2 ........................................................................................................... 6 Задание №3 ........................................................................................................... 7 Задание №4 ........................................................................................................... 8 Задание №5 ........................................................................................................... 9 Задание №6 ......................................................................................................... 10 Задание №7 ......................................................................................................... 11 Вывод ...................................................................................................................... 13 2 Введение Язык программирования Python – это действительно удивительный инструмент, который заслуживает особого уважения и любви. Python – лучший язык программирования по ряду причин. 1. Чистый и читаемый код: Python славится своей простотой и читаемостью. Его синтаксис очень близок к обычному английскому языку, что делает его идеальным языком как для начинающих программистов, так и для профессионалов. Чистый код легче поддерживать и развивать, что экономит время и усилия. 2. Множество библиотек и фреймворков: Python обладает огромным экосистемой библиотек и фреймворков, которые делают его подходящим для различных областей, начиная от веб-разработки и машинного обучения, и заканчивая научными и инженерными вычислениями. Это позволяет быстро и эффективно решать разнообразные задачи. 3. Сообщество и поддержка: Python имеет активное и преданное сообщество разработчиков. Это означает, что всегда есть кто-то, кто может помочь вам, если у вас возникнут вопросы или проблемы. Сообщество также регулярно обновляет и совершенствует язык, делая его более мощным и удобным. 4. различных Портативность и мультиплатформенность: Python работает на операционных системах, что делает его универсальным инструментом для разработки. Вы можете писать код на Python на Windows, macOS или Linux, и он будет работать повсюду. 5. Мощные инструменты для науки и анализа данных: Python - язык выбора для многих исследователей и аналитиков данных. Библиотеки, такие как NumPy, pandas и Matplotlib, предоставляют мощные средства для анализа и визуализации данных. 6. Машинное обучение и искусственный интеллект: Python стал доминирующим языком для разработки в области машинного обучения и 3 искусственного интеллекта. Библиотеки, такие как TensorFlow и PyTorch, предоставляют широкие возможности для создания и обучения моделей машинного обучения. 7. Язык будущего: Python продолжает расти и развиваться. Его популярность по-прежнему растет, и это делает его языком будущего. Он используется во множестве областей, от разработки игр до интернета вещей, и его потенциал еще далеко не исчерпан. Итак, важно подчеркнуть, что Python – это удивительный и многосторонний язык программирования, который заслуживает внимания. Для того чтобы понять всю его мощь, необходимо решить семь задач на этом языке. Это позволит увидеть, насколько Python гибок и удобен для решения разнообразных задач. 4 Цель работы Цель данной практической работы заключается в основательном изучении и понимании операторов ввода-вывода в Python, с особым фокусом на операторах print() и input(). Также необходимо охватить все аспекты и возможности, предоставляемые данными операторами, включая их основные параметры, такие как \n, sep и end, и выяснить, как они влияют на вывод и ввод данных в программе. Подробно рассмотрим функционал оператора print(), изучим его возможности форматирования вывода, влияние специальных символов, таких как перенос строки (\n), а также параметры разделителя (sep) и окончания строки (end). Это позволит понять, как использование этих параметров может изменить формат вывода данных в программе, что в свою очередь значительно обогатит способы представления информации. Далее будет проведен подробный анализ оператора input() и его возможностей для взаимодействия с пользователем. Рассмотрим методы ввода данных, обработку введенной информации и возможности валидации данных, чтобы создать более дружелюбный и надежный пользовательский интерфейс. Мы также проанализируем способы использования оператора input() в различных сценариях, чтобы понять его полную функциональность и гибкость в разработке программ. В результате выполнения этой работы мы планируем получить глубокое понимание основ работы с операторами ввода-вывода в Python, а также научиться использовать их параметры для оптимизации вывода информации и улучшения взаимодействия с пользователем в программном коде. Это позволит нам расширить наши навыки в разработке программного обеспечения и улучшить качество программ, которые мы создаем. 5 Ход работы Задание №1 Дано задание: «Написать программу для вывода первых десяти чисел Фибоначчи в одну строку с разделением в один пробел, используя возможность команды print для вывода нескольких аргументов. Команда print(“1 1 2 3…”) не будет считаться верной.» Все, что необходимо здесь сделать, это написать команду print и последовательно вывести числа Фибоначчи (рис. 1 и рис. 2). Рисунок 1 - Код первой задачи Рисунок 2 - Выполнение кода первой задачи Задание №2 Дано задание: «Написать программу для вывода первых десяти чисел Фибоначчи в столбик (каждое число последовательности печатается на новой строке).» Тут необходимо сделать тоже самое, только в конце поставить параметр sep=‘\n’, чтобы заменить стандартные пробелы после каждого числа на перенос на другую строку, таким образом цифры будут выводиться в соответствии с правилами задания. (рис. 3 и рис. 4). Рисунок 3 - Код второй задачи 6 Рисунок 4 - Выполнение кода второй задачи Задание №3 Дано задание: «Используя только одну команду print() и только параметр \n вывести в терминал текст, представленный ниже. “Когда мы свернули в переулок, Пуаро посмотрел на часы, и я понял, почему мы отложили осмотр места преступления. Было как раз полпятого. Пуаро хотел воспроизвести атмосферу вчерашних событий как можно точнее.”» В данной задаче необходимо только лишь с помощью команды print() и параметра \n повторить точь в точь пример вывода текста в консоль (рис. 5, рис. 6, рис. 7, рис. 8). Рисунок 5 - Пример выполнения задания Рисунок 6 - Код программы - 1 часть 7 Рисунок 7 - Код программы - 2 часть Рисунок 8 – Результат Задание №4 Дано задание: «Написать программу, которая считывает три строки по очереди, а затем выводит их в обратной последовательности, каждую на отдельной строчке. В качестве входных данных в строгом порядке использовать следующие аргументы: «Казнить», «Нельзя», «Помиловать».» Тут с помощью команды input() необходимо принять 3 значения, а затем с помощью команды print() расставить их в другом порядке (рис. 9, рис. 10). Рисунок 9 - Код программы Рисунок 10 - Результат 8 Задание №5 Дано задание: «Написать программу, которая выводит утверждение о лучшем фильме, выводя фразу «Лучший фильм всех времён» (без кавычек), после которого должны стоять пробел, знак тире и ещё один пробел после, а затем введённое вами название фильма и восклицательный знак (перед восклицательным знаком пробела быть не должно). Входные данные: одна строка – название фильма.» В данной задаче необходимо показать навыки владения input и sep. С помощью sep стандартные пробелы заменяются на ничто, поэтому задание можно считать выполненным (рис. 11 и рис. 12). Рисунок 11 - Код программы Рисунок 12 – Результат 9 Задание №6 Дано задание: «Написать программу, которая считывает строкуразделитель и три строки, а затем выводит указанные строки через указанный разделитель. Входные данные строка-разделитель, 3 строки (каждая на отдельной строке).» Для решения данной задачи понадобятся 4 переменные, 3 из которых играют роль строк, а одна – разделитель (рис. 13 и 14). Рисунок 13 - Код программы Рисунок 14 – Результат 10 Задание №7 Дано задание: «Расписать подробно каждую строку в коде, представленном на Рисунке 4. Объяснить каждый параметр и его влияние на строку, а также причину вывода в терминал в том или ином виде.» Решение задачи: Рисунок 15 - Программа, которую необходимо построчно описать 11 В первой строке мы используем функцию print() для вывода трех значений ‘1’, ‘2’ и ‘3’ на экран. Во второй строке также используем функцию print(), но на этот раз мы указываем параметр sep=‘--’. Это означает, что между элементами ‘4’, ‘5’ и ‘6’ будет вставлена строка ‘--’ вместо пробела по умолчанию. В третьей строке мы снова используем функцию print() с параметром sep=‘*U*’. Между элементами ‘5’, ‘6’ и ‘7’ будет вставлена строка ‘*U*’ вместо пробела. В четвертой же строке мы используем функцию print() с параметром end=‘-*-*-’. По умолчанию, функция print() добавляет символ новой строки ‘\n’ в конце вывода. Однако, указав параметр end=‘-*-*-’, мы заменяем символ новой строки на указанную строку. В пятой строке также используем функцию print() с параметром end=‘\n\n\n’. Здесь мы указываем три символа новой строки, что приведет к трем пустым строкам после вывода элементов ‘11’, ‘12’ и ‘13’. В шестой строке мы используем функцию print() для вывода двух значений ‘14\n’, ‘15’ и ‘16’. Первый элемент в этом списке ‘14\n’ содержит символ новой строки, который будет интерпретирован как переход на следующую строку. Второй т третий элементы ‘15’ и ‘16’ выводятся на следующей строке. 12 Вывод В процессе выполнения практической работы были получены глубокое понимание основ работы с операторами ввода-вывода в Python, а также научились использовать их параметры для оптимизации вывода информации и улучшения взаимодействия с пользователем в программном коде. 13 Исходный код программы. try: while True: ch = input("Выберите задание от 1 до 7 (введите 'exit' для выхода): ") if ch == "exit": print("Выход...") break elif ch == "1" or ch == "2" or ch == "3" or ch == "4" or ch == "5" or ch == "6": if ch == "1": print("Числа Фибоначчи:", "0", "1", "1", "2", "3", "5", "8", "13", "21", "34") elif ch == "2": print("Числа Фибоначчи:", "0", "1", "1", "2", "3", "5", "8", "13", "21", "34", sep="\n") elif ch == "3": print("\nКогда мы свернули в переулок,\nПуаро посмотрел на часы, и я понял, почему мы отложили осмотр места преступления.\nБыло как раз полпятого. Пуаро хотел воспроизвести атмосферу вчерашних событий как можно точнее.\n") elif ch == "4": a, b, c = input("Введите 3 слова через Enter: "), input("2 слово: "), input("3 слово: ") print(c, b, a) elif ch == "5": a = input("Введите лучший фильм всех времен:") print("Самый лучший фильм - ", a, "!", sep='') elif ch == "6": a, b, c, d = input("Введите разделитель, а далее 3 строки через Enter"), input("1 строка: "), input("2 строка: "), input("3 строка: "), print(b, c, d, sep=a) else: print("Некорректный ввод. Введите число от 1 до 6.") 14 except ValueError as e: print(str(e)) 15