Понятие о языке программирования. Синтаксис и семантика языка


)Функции. Создание функции. Функции-генераторы



бет5/13
Дата13.04.2023
өлшемі337,91 Kb.
#82322
түріАнализ
1   2   3   4   5   6   7   8   9   ...   13
7)Функции. Создание функции. Функции-генераторы.
Функция — это операция, которая после выполнения возвращает результат, хотя в Python для некоторых из них это необязательно. С математической точки зрения — это отображение одного множества на другое.
Разделяют функции на три типа.
Чистые функции возвращают однозначный результат по известным входным параметрам.
Встроенные функции Python — стандартные функции, которые также возвращают результат. Например, функции работы с числами из модуля math, рассмотренные в соответствующей главе.
Наиболее интересен третий тип функций — пользовательские функции, создаваемые разработчиком программы в соответствии с поставленными задачами. О них и пойдет речь в дальнейшем
Для создания функции используется инструкция def.
Синтаксис:
def имя_функции( [переменные]):
тело функции [retu rn возвращаемый результат]
Пример
Код:
def s p is():
p r i n t ( l i s t ( ' список'))
Результат: ['с', 'п', 'и', 'с', 'о', 'к']
Функция может передавать не только числа, но и строку, список и даже другую функцию.
Функция-генератор отдает значение с помощью ключевого слова yield, при этом обновляя свое значение. По сути функция является генератором итератора, поскольку обновляет свое состояние при получении новых значений.
Код:
d e f fib () :
x l, х2=0,1
w hile True:
y ie ld х2
x l, х2=х2, xl+x2
n = i n t ( i n p u t ( 'В ведите необходимое количество чисел Фиббоначи: '))
fib 1 =fib ()
fo r i in ran g e(n ):
p r i n t (n ex t (f ib l) , ' ' , e n d = '')
Результат: Введите необходимое количество чисел Фиббоначи: 10 1 1 2 3 5 8 13 21 34 55
Как видно из примера, функция каждый раз обновляет свое значение при каждом новом вызове. Функция next вызывает объектгенератор.

9)Варианты синтаксиса импорта модуля и объектов модуля. Применение импортированных объектов.


Существует два способа использования содержимого модуля.
Первый — подключить модуль полностью с помощью ключевого слова import. Ранее такой подход был продемонстрирован при работе с числами, когда требовалось использовать стандартные математические функции.
Синтаксис: import math
В этом случае все объекты, инструкции, методы или функции импортированного модуля будут доступны программе.
Импортируемому модулю может быть присвоен псевдоним, который может быть использован для обращения к атрибутам модуля.
Синтаксис: im port math as m
Можно подключать несколько модулей в отдельных строках или через запятую.
Стилистически рекомендуется подключать модули в нескольких строках с целью «читабельности» кода.
Второй способ предполагает вызов конкретного метода или методов (атрибутов) модуля, которые необходимы в программе. Для этого используется инструкция f rom (из).
Синтаксис:
From модуль im port атрибут1 [as псевдоним].] [, атрибут2 [as ...]] или
from модуль im port *
Последний предполагает вызов всех атрибутов модуля, которые включены в переменную__all__(атрибуты). Если такой переменной нет, то будут подключены все атрибуты, которые не начинаются с нижнего подчеркивания.
При этом, если подключать модули полностью, то может возникнуть перезапись переменных, имена которых совпадают с именами, определенными в основной программе.
Для вызова атрибута из модуля достаточно указать его имя или псевдоним, а после точки — имя атрибута, сохранив требуемый синтаксис
Справка. Если использовать from math import pi, то в выражениях l=2*m ath.pi*r и s=math.pi*r**2 необходимо убрать math., иначе произойдет исключение.
11)

Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   13




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет