Главная страница
Навигация по странице:

  • Лабораторная работа 5. Структура кода в языке Python. Линейные алгоритмы и алгоритмы ветвления. Цель работы

  • Оборудование и материалы. Персональный компьютер, среда разработки Python. Указания по технике безопасности

  • Продлеваем строки с помощью символа \

  • Сравниваем выражения с помощью операторов if, elif и else

  • Список литературы, рекомендуемый к использованию по данной теме

  • Лабораторная работа 6. Работа с циклами в Python Цель работы

  • Цикл while

  • Операторcontinue

  • Задания

  • Прерываем цикл с помощью break

  • Пропускаем итерации с помощью continue

  • Проверяем, завершился ли цикл заранее, с помощью else

  • Выполняем итерации с помощью for

  • Лабораторная работа 7. Генерирование числовых последовательностей Цель

  • Лабораторная работа Структура кода в языке Python. Линейные алгоритмы и алгоритмы ветвления. Цель работы


    Скачать 432.06 Kb.
    НазваниеЛабораторная работа Структура кода в языке Python. Линейные алгоритмы и алгоритмы ветвления. Цель работы
    Дата05.04.2022
    Размер432.06 Kb.
    Формат файлаpdf
    Имя файла28.03_python.pdf
    ТипЛабораторная работа
    #444544

    51 3. Шкляр, М. Ф. Основы научных исследований : учеб. пособие / М.Ф. Шкляр. - 6-е изд. - М. : Дашков и Ко, 2016. - 208 с.
    4. Михеева, Е. В. Информационные технологии в профессиональной деятельности : учеб. пособие / Е.В. Михеева. - 14-е изд., стер. - М. : Академия, 2016. - 384 с.
    5. Любанович Билл. Простой Python. Современный стиль программирования. —
    СПб.: Питер, 2016. — 480 с.
    Лабораторная работа 5. Структура кода в языке Python. Линейные алгоритмы
    и алгоритмы ветвления.
    Цель работы:
    Изучить способы оформления структуры кода в языке Python. Научиться применять линейные алгоритмы и алгоритмы ветвления и выбора.
    Компетенции:
    Код
    Формулировка:
    ОК-5 быть готовым работать с информацией в различных формах, использовать для ее получения, обработки, передачи, хранения и защиты современные компьютерные технологии
    ОПК-5 способностью использовать основные приемы обработки и представления экспериментальных данных
    ОПК-6 способность осуществлять поиск, хранение, обработку и анализ информации из различных источников и баз данных, представлять ее в требуемом формате с использованием информационных, компьютерных и сетевых технологий
    Теоретическая часть.
    В предыдущих работах вы увидели множество примеров данных, но практически не работали с ними. В большинстве примеров использовался интерактивный интерпретатор, а сами они были довольно короткими. Теперь вы увидите, как структурировать код Python, а не только данные.
    В большинстве языков программирования символы вроде фигурных скобок ({ и }) или ключевые слова вроде begin и end применяется для того, чтобы разбить код на разделы. В этих языках хорошим тоном является использование отбивки пробелами, чтобы сделать программу более удобочитаемой для себя и других. Существуют даже инструменты, которые помогут красиво выстроить ваш код.
    Гвидо ван Россум при разработке Python решил, что выделения пробелами будет достаточно, чтобы задать структуру программы и избежать ввода всех этих скобок. Python отличается от других языков тем, что пробелы в нем используются для того, чтобы задать структуру программы. Этот аспект новички замечают одним из первых, и он может показаться странным для тех, кто уже работал с другими языками программирования.
    Однако по прошествии некоторого времени это начинает казаться естественным и вы перестаете это замечать. Вы даже привыкнете к тому, что делаете больше, набирая меньше текста.
    Комментируем с помощью символа #
    Комментарий — это фрагмент текста в вашей программе, который будет проигнорирован интерпретатором Python. Вы можете использовать комментарии, чтобы дать пояснение близлежащего кода, сделать какие-то пометки для себя, или для чего-то

    52 еще. Комментарий помечается символом #; все, что находится после # до конца текущей строки, является комментарием. Обычно комментарий располагается на отдельной строке, как показано здесь:
    Или на той же строке, что и код, который нужно пояснить:
    Символ # имеет много имен: хеш, шарп, фунт или устрашающее октоторп. Как бы вы его ни назвали, его эффект действует только до конца строки, на кото рой он располагается.
    Python не дает возможности написать многострочный комментарий. Вам нужно явно начинать каждую строку или раздел комментария с символа #:
    Однако если октоторп находится внутри текстовой строки, он становится простым символом #:
    Оборудование и материалы.
    Персональный компьютер, среда разработки Python.
    Указания по технике безопасности:
    Соответствуют технике безопасности по работе с компьютерной техникой.
    Задания
    Продлеваем строки с помощью символа \
    Любая программа становится более удобочитаемой, если ее строки относительно короткие. Рекомендуемая (но не обязательная) максимальная длина строки равна 80 символам. Если вы не можете выразить свою мысль в рамках 80 символов, воспользуйтесь символом возобновления \. Просто поместите его в конце строки, и дальше Python будет действовать так, будто это все та же строка.
    Например, если бы я хотел создать длинную строку из нескольких коротких, я мог бы сделать это пошагово:
    Или же за одно действие, использовав символ continuation:
    Продлить строку может быть необходимо, если выражение располагается на нескольких строках:
    Сравниваем выражения с помощью операторов if, elif и else

    53
    До этого момента мы говорили только о структурах данных. Теперь же наконец готовы сделать первый шаг к рассмотрению структур кода, которые вводят данные в программы. (Вы уже могли получить представление о них в лабораторной работе 4, в разделе о множествах.) В качестве первого примера рассмотрим небольшую программу, которая проверяет значение булевой переменной disaster и выводит подходящий комментарий:
    Строки if и else в Python являются операторами, которые проверяют, является ли значение выражения (в данном случае переменной disaster) равным True. Помните, print()
    — это встроенная в Python функция для вывода информации, как правило, на ваш экран.
    Примечание:
    Если вы работали с другими языками программирования, обратите
    внимание на то, что при проверке if вам не нужно ставить скобки. Не нужно
    писать что-то вроде if (disaster == True).
    В конце строки следует поставить двоеточие (:). Если вы, как и я,
    иногда забываете ставить двоеточие, Python выведет сообщение об ошибке.
    Каждая строка print() отделена пробелами под соответствующей проверкой. Здесь использовано четыре пробела для того, чтобы выделить каждый подраздел. Хотя вы можете использовать любое количество пробелов, Python ожидает, что внутри одного раздела будет применяться одинаковое количество пробелов. Рекомендованный стиль —
    PEP-8 (http://bit.ly/pep-8) — предписывает использовать четыре пробела. Не применяйте табуляцию или сочетание табуляций и пробелов — это мешает подсчитывать отступы.
    Все выполненные в этом примере действия выполняют следующее:
    1. Присвоили булево значение True переменной disaster.
    2. Произвели условное сравнение с помощью операторов if и else, выполняя разные фрагменты кода в зависимости от значений переменной disaster.
    3. Вызвали функцию print(), чтобы вывести текст на экран.
    Можно организовывать проверку в проверке столько раз, сколько вам нужно:

    54
    В Python отступы определяют, какие разделы if и else объединены в пару. Наша первая проверка обращалась к переменной furry. Поскольку ее значение равно True,
    Python переходит к выделенной таким же количеством пробелов проверке if small.
    Поскольку мы указали значение переменной small равным True, проверка вернет результат True. Это заставит Python вывести на экран строку Это котэ.
    Если необходимо проверить более двух вариантов, используйте операторы if, elif (это значит else if — «иначе если») и else:
    В предыдущем примере мы проверяли равенство с помощью оператора ==. В
    Python используются следующие операторы сравнения:

    равенство (==);

    неравенство (!=);

    меньше (<);

    меньше или равно (<=);

    больше (>);

    больше или равно (>=);

    включение (in …).
    Эти операторы возвращают булевы значения True или False. Взглянем на то, как они работают, но сначала присвоим значение переменной x:
    Выполним несколько проверок:
    Обратите внимание на то, что для проверки на равенство используются два знака
    «равно» (==); помните, что один знак «равно» применяется для присваивания значения переменной.
    Если вам нужно выполнить несколько сравнений одновременно, можете использовать булевы операторы and, or и not, чтобы определить итоговый двоичный результат.
    Булевы операторы имеют более низкий приоритет, нежели фрагменты кода, которые они сравнивают. Это значит, что сначала высчитывается результат фрагментов, а затем они сравниваются. В данном примере из-за того, что мы устанавливаем значение х равным 7, проверка 5 < х возвращает значение True и проверка х < 10 также возвращает
    True, поэтому наше выражение преобразуется в True and True:

    55
    Однако, самый простой способ избежать путаницы — использовать круглые скобки:
    Рассмотрим некоторые другие проверки:
    Если вы используете оператор and для того, чтобы объединить несколько проверок,
    Python позволит вам сделать следующее:
    Это выражение аналогично проверкам 5 < x и x < 10. Вы также можете писать более длинные сравнения:
    Что есть истина? Что, если элемент, который мы проверяем, не является булевым?
    Чем Python считает True и False?
    Значение false не обязательно явно означает False. Например, к False приравниваются все следующие значения:

    булева переменная False;

    значение None;

    целое число 0;

    число с плавающей точкой 0.0;

    пустая строка (' ');

    пустой список ([]);

    пустой кортеж (());

    пустой словарь ({});

    пустое множество (set()).
    Все остальные значения приравниваются к True. Программы, написанные на
    Python, используют это определение истинности (или, как в данном случае, ложности), чтобы выполнять проверку на пустоту структуры данных наряду с проверкой на равенство непосредственно значению False:
    Если вы выполняете проверку для выражения, а не для простой переменной, Python оценит его значение и вернет булев результат. Поэтому, если вы введете следующее:
    Python оценит выражение color == "red". В нашем примере мы присвоили переменной color значение "Терракотовый", поэтому значение выражения color == "red" равно False и Python перейдет к следующей проверке:

    56
    Контрольные вопросы
    1. Как можно продлить строку? Связать несколько строк в одну?
    2. Какие операторы сравнения в Python вы знаете?
    3. Какова структура оператора if?
    4. Как записать в условии знак равенства?
    5. Как записать в условии знак неравенства?
    6. Как задать условие «меньше либо равно», «больше либо равно»?
    7. Как в условии можно проверить включение?
    8. Что возвращает оператор сравнения?
    9. Как и для чего используются булевы операторы and, or, not?
    10. Какой приоритет имеют булевы операторы по сравнению с операторами сравнения?
    11. Что произойдет, если элемент, который проверяется в условии, не будет булевого типа?
    Список литературы, рекомендуемый к использованию по данной теме:
    1. Орлов, С. А. Программная инженерия. Технологии разработки программного обеспечения : учебник / С.А. Орлов. - 5-е изд., обновл. и доп. - СПб. : Питер, 2017. -
    640 с.
    2. Гагарина, Л. Г. Современные проблемы информатики и вычислительной техники :
    [учеб. пособие] / Л.Г. Гагарина, А.А. Петров. - М. : Форум, 2016. - 368 с.
    3. Шкляр, М. Ф. Основы научных исследований : учеб. пособие / М.Ф. Шкляр. - 6-е изд. - М. : Дашков и Ко, 2016. - 208 с.
    4. Михеева, Е. В. Информационные технологии в профессиональной деятельности : учеб. пособие / Е.В. Михеева. - 14-е изд., стер. - М. : Академия, 2016. - 384 с.
    5. Любанович Билл. Простой Python. Современный стиль программирования. —
    СПб.: Питер, 2016. — 480 с.
    Лабораторная работа 6. Работа с циклами в Python
    Цель работы:
    Изучить команды создания циклов в языке Python. Изучить различия между циклами while и for и области их применения. Изучить применение команд break и continue.
    Компетенции:
    Код
    Формулировка:
    ОК-5 быть готовым работать с информацией в различных формах, использовать для ее получения, обработки, передачи, хранения и защиты современные компьютерные технологии
    ОПК-5 способностью использовать основные приемы обработки и представления экспериментальных данных
    ОПК-6 способность осуществлять поиск, хранение, обработку и анализ информации из различных источников и баз данных,

    57 представлять ее в требуемом формате с использованием информационных, компьютерных и сетевых технологий
    Теоретическая часть.
    Все языки программирования содержат какую-нибудь конструкцию цикла. В большей части языков есть больше одной такой конструкции. В языке Python есть два типа циклов:

    цикл for

    цикл while
    Циклы используются в тех случаях, когда нам нужно сделать что-нибудь много раз.
    Нередко вам придется выполнить какую-нибудь операцию (или ряд операций) в части данных снова и снова. Тут то и вступают в силу циклы. Благодаря им становится возможно максимально упростить данный вопрос. Давайте подробно разберём, как работают эти структуры!
    Цикл while
    While - один из самых универсальных циклов в Python, поэтому довольно медленный. Выполняет тело цикла до тех пор, пока условие цикла истинно.
    Цикл for
    Цикл for уже немного сложнее, чуть менее универсальный, но выполняется гораздо быстрее цикла while. Этот цикл проходится по любому итерируемому объекту (например строке или списку), и во время каждого прохода выполняет тело цикла.
    Операторcontinue
    Операторcontinueначинаетследующийпроходцикла, минуяоставшеесятелоцикла
    (forилиwhile)
    Операторbreak
    Операторbreakдосрочнопрерываетцикл.

    58
    Команда else
    Слово else, примененное в цикле for или while, проверяет, был ли произведен выход из цикла инструкцией break, или же "естественным" образом. Блок инструкций внутри else выполнится только в том случае, если выход из цикла произошел без помощи break.
    Оборудование и материалы.
    Персональный компьютер, среда разработки Python.
    Указания по технике безопасности:
    Соответствуют технике безопасности по работе с компьютерной техникой.
    Задания
    Повторяем действия с помощью while
    Проверки с помощью if, elif и else выполняются последовательно. Иногда нам нужно выполнить какие-то операции более чем один раз. Нам нужен цикл, и простейшим вариантом циклов в Python является while. Попробуйте запустить с помощью интерактивного интерпретатора следующий пример — это простейший цикл, который выводит на экран значения от 1 до 5:
    Сначала мы присваиваем значение 1 переменной count. Цикл while сравнивает значение переменной count с числом 5 и продолжает работу, если значение переменной count меньше или равно 5. Внутри цикла мы выводим значение переменной count, а затем увеличиваем его на 1 с помощью выражения count += 1. Python возвращается к верхушке цикла и снова сравнивает значение переменной count с числом 5. Значение переменной count теперь равно 2, поэтому содержимое цикла while выполняется снова и переменная count увеличивается до 3.
    Это продолжается до тех пор, пока переменная count не будет увеличена с 5 до 6 в нижней части цикла. Во время очередного возврата наверх цикла проверка count<= 5 вернет значение False и цикл while закончится. Python перейдет к выполнению следующих строк.

    59
    Прерываем цикл с помощью break
    Если вы хотите, чтобы цикл выполнялся до тех пор, пока что-то не произойдет, но вы не знаете точно, когда это событие случится, можете воспользоваться бесконечным циклом, содержащим оператор break. В этот раз мы считаем строку с клавиатуры с помощью функции input(), а затем выведем ее на экран, сделав первую букву прописной.
    Мы прервем цикл, когда будет введена строка, содержащая только букву «q»:
    Пропускаем итерации с помощью continue
    Иногда вам нужно не прерывать весь цикл, а только пропустить по какой-то причине одну итерацию. Рассмотрим воображаемый пример: считаем целое число, выведем на экран его значение в квадрате, если оно нечетное, и пропустим его, если оно четное. И вновь для выхода из цикла используем строку "q":
    Проверяем, завершился ли цикл заранее, с помощью else
    Если цикл while завершился нормально (без вызова break), управление передается в опциональный блок else. Вы можете использовать его в цикле, где выполняете некоторую проверку и прерываете цикл, как только проверка успешно выполняется. Блок else выполнится в том случае, если цикл while будет пройден полностью, но искомый объект не будет найден:

    60
    Выполняем итерации с помощью for
    В Python итераторы часто используются по одной простой причине. Они позволяют вам проходить структуры данных, не зная, насколько эти структуры велики и как реализованы. Вы даже можете пройти по данным, которые были созданы во время работы программы, что позволяет обработать потоки данных, которые в противном случае не поместились бы в память компьютера.
    Вполне возможно пройти по последовательности таким образом:
    Однако существует более характерный для Python способ решения этой задачи:
    Списки вроде rabbits являются одними из итерабельных объектов в Python наряду со строками, кортежами, словарями и некоторыми другими элементами. Итерирование по кортежу или списку возвращает один элемент за раз. Итерирование по строке возвращает один символ за раз, как показано здесь:

    61
    Итерирование по словарю (или его функции keys()) возвращает ключи. В этом примере ключи являются номерами пальцев на руках:
    Чтобы итерировать по значениям, а не по ключам, следует использовать функцию values():
    Чтобы вернуть как ключ, так и значение словаря, вы можете использовать функцию items():
    Помните, что можете присвоить значение кортежу за один шаг. Для каждого кортежа, возвращенного функцией items(), присвойте первое значение (ключ) переменной card, а второе (значение) — переменной contents:

    62
    Прерываем цикл с помощью break
    Ключевое слово break в цикле for прерывает этот цикл точно так же, как и цикл while.
    Пропускаем итерации с помощью continue
    Добавление ключевого слова continue в цикл for позволяет перейти на следующую итерацию цикла, как и в случае с циклом while.
    Проверяем, завершился ли цикл заранее, с помощью else
    Как и в цикле while, в for имеется опциональный блок else, который проверяет, выполнился ли цикл for полностью. Если ключевое слово break не было вызвано, будет выполнен блок else.
    Это полезно, если вам нужно убедиться в том, что предыдущий цикл выполнился полностью, вместо того чтобы рано прерваться. Цикл for в следующем примере выводит на экран название сыра и прерывается, если сыра в магазине не найдется:
    Примечание:
    Как и в цикле while, в цикле for использование блока else может показаться нелогичным. Можно рассматривать цикл for как поиск чего-то, в таком случае else будет вызываться, если вы ничего не нашли. Чтобы получить тот же эффект без блока else, используйте переменную, которая будет показывать, нашелся ли искомый элемент в цикле for, как здесь:
    Контрольные вопросы

    63 1. Для чего используются циклы?
    2. Опишите особенности применения цикла while.
    3. В чём разница между elifи else?
    4. Для чего используется оператор break?
    5. Для чего используется оператор continue?
    6. Как можно проверить, завершился ли цикл досрочно?
    7. В чём особенности синтаксиса цикла for?
    8. Как выполнить итерирование по словарю? Как вывести ключи?
    9. Как выполнить итерирование словаря и вывести его значения?
    10. Как вывести и ключи и значения словаря?
    11. Как используется прерывание в цикле for? Для чего?
    Список литературы, рекомендуемый к использованию по данной теме:
    1. Орлов, С. А. Программная инженерия. Технологии разработки программного обеспечения : учебник / С.А. Орлов. - 5-е изд., обновл. и доп. - СПб. : Питер, 2017. -
    640 с.
    2. Гагарина, Л. Г. Современные проблемы информатики и вычислительной техники :
    [учеб. пособие] / Л.Г. Гагарина, А.А. Петров. - М. : Форум, 2016. - 368 с.
    3. Шкляр, М. Ф. Основы научных исследований : учеб. пособие / М.Ф. Шкляр. - 6-е изд. - М. : Дашков и Ко, 2016. - 208 с.
    4. Михеева, Е. В. Информационные технологии в профессиональной деятельности : учеб. пособие / Е.В. Михеева. - 14-е изд., стер. - М. : Академия, 2016. - 384 с.
    5. Любанович Билл. Простой Python. Современный стиль программирования. —
    СПб.: Питер, 2016. — 480 с.
    Лабораторная работа 7. Генерирование числовых последовательностей
    Цель
    работы:Научиться генерировать и итерировать числовые последовательности.Изучить итерирование по нескольким последовательностям.
    Генерирование числовых последовательностей с помощью функции range(). Включения списков и словарей, множества и генератора.
    Компетенции:
    Код
    Формулировка:
    ОК-5 быть готовым работать с информацией в различных формах, использовать для ее получения, обработки, передачи, хранения и защиты современные компьютерные технологии
    ОПК-5 способностью использовать основные приемы обработки и представления экспериментальных данных
    ОПК-6 способность осуществлять поиск, хранение, обработку и анализ информации из различных источников и баз данных, представлять ее в требуемом формате с использованием информационных, компьютерных и сетевых технологий


    написать администратору сайта