Функции в Python: def. Python 3 для начинающих


Опубликованно 04.04.2018 03:26

Функции в Python: def. Python 3 для начинающих

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

Почему мы нуждаемся в функции

Эта функция является инструментом программиста. С их помощью, разработчик структуры программы, делая ее более четкой и компактной. С помощью функции, вы можете добиться повторного использования кода без повторной записи.

Проще показать логику выполнения различных частей программы. Это позволяет сократить объем и время, которое специалист тратит на создание сценария.Как написать первую функцию

Python 3 для начинающих изучить программирование является наиболее простым и функция print(). Чтобы увидеть это в действии, вы будете нуждаться в среду разработки. Для этого, скачайте дистрибутив языка с официального сайта и установить Python на вашем компьютере.

Откройте меню «Пуск» и в списке программ найдите Python 3. Разверните нажатием левой кнопки. В появившемся списке, найдите окружающей среды "IDLE" и запустить его. Введите команду print(«Hello, World!») и нажмите клавишу «Enter». Интерпретатор возвращает результат вашей первой функции.

Некоторые программисты предпочитают работать в консоли. Если вы чувствуете себя в их число, нажмите win+R и введите команду python.exe. Открывается обычный интерпретатор, интерфейс cmd. Наберите программу, как описано выше, и нажмите клавишу Ввод в конце, чтобы увидеть результат.

Как использовать def

Новые функции создаются с помощью инструкции def. Они так же эффективны, как и встроенные print() или open(), но отличается от функции в компиляции языков. Python def относится к исполняемой инструкции. Это означает, что функция не существует, пока интерпретатор не видит и не перейдет к его достижению.

Инструкция def создает новый объект и дает ему название. Это, когда интерпретатор приступает к реализации, он создает новый объект и связывает его с именем после def. Для хранения данных функциям, вы можете прикрепить различные атрибуты.

Теперь мы будем писать функцию, которая возвращает фразу «Hello, World!» только с помощью фрс:>>> def здравствуй_мир():print(«Hello, World!»)>>> здравствуй_мир() #вызов функцииHello, World!Синтаксис функции и обратно

Инструкция def Python состоит из заголовка и пишет следующие правила:>>>def <имя>(аргумент 1 аргумент 2, N):

После заголовка следует блок операторов, который начинается с удаления обязательным. В IDLE интерпретатор сделает это автоматически. Но в "блокнот" или другом текстовом редакторе, вы можете забыть нажать клавишу Tab. Затем функция не выполняется. Программный код в блок инструкций называется телом функции, и выполняется каждый раз при ее вызове.

Также в организме иногда return:def <имя>(аргумент 1 аргумент 2, N):...return <значение>

Return завершает работу функции и передает вызывающей программе объект, результат. Инструкции не является обязательным. Функция будет работать без возврата, и заканчивается, когда поток управления достигает конца своего тела.

Параметры и аргументы

Каждую функцию можно передавать параметры, которые указаны в скобках после определения. В Python они написаны, как переменных, разделенных запятыми. Значения или ссылки на объекты эти имена присваиваются в блоке на две точки. После назначения операции, называются аргументами, а не параметры.

Аргументы внутри функции не являются объектами снаружи, так и в программировании их относятся к локальным переменным. Область видимости ограничена функциональный блок, который начинается с def и заканчивается return. Чтобы было понятнее, вот пример:x = 12 #определяем переменные-ссылки на объектыy = 34>>>def example(x,y): #создаем функцию с именем examplex = «Привет» #присваиваем значения аргументов x, yy = «Python»print(x, y, sep= «, »)return None>>>example(x, y) #вызываем функцию, не забудьте указать параметрыЗдравствуйте, Python>>>print(x, y)12 34

Пожалуйста, обратите внимание на предпоследнюю строку кода. В интерпретатор Python, команда print() возвращается переменных x и y глобальной области видимости.

Значения аргументов не требуется указать внутри функции, вы можете зарегистрировать вручную при ее вызове:>>>def E_2(x, y):return x + y>>>E_2(«Hello», «Питон!») #чтобы слова были разделены, поставить пробел перед закрывающей кавычкиПривет, Питон!E_2(5, 4)10

Как показывает пример с простой функцией E_2, результат полностью зависит от типа объектов x и y. В первом случае, E_2 выполнила объединения, и во второй арифметической операции сложения. В этом заключается принцип полиморфизм и динамическая типизация. То, что объекты определяют смысл усиливают гибкость и простоту языка. Не нужно тратить время, чтобы указать тип данных, который работает.

Правило LEGB

Это правило распространяется на использование переменных в различных областях видимости. По умолчанию, все имена, которые вы создаете в теле функции, рассматриваются как локальные. И имена в модуле, являются глобальными. Если вы хотите, фамилий, вы можете назначить значения переменных верхнего уровня с помощью инструкции notlocal и global.

Правило LEGB объясняет схему разрешения имен:Как только интерпретатор находит переменную внутри инструкции def, он сначала выполняет поиск значения в локальной области видимости.Если поиск не дает результата, он переходит в пределах досягаемости любого, кто полной инструкции def.Далее, интерпретатор движется в мировом масштабе имена в верхнем уровне модуля, и тем, что назначены в качестве глобального.Если поиск не дает результатов, интерпретатор выполняет поиск имен в области видимости в Python.

Рассмотрим пример:>>>L = 85>>>R = 23>>>def начальной(K):R = 10C = L + K+Rreturn C>>>первичный(5)100

Переменные L и R находятся на верхнем уровне, и имена. R, C, и K-это локальные переменные, а также распределение стоимости, которая происходит внутри инструкции def.

Интерпретатор сначала выполняет сложение для R, C и K, игнорируя переменную R вне инструкции def. Затем в поиск, и, не найдя среди имен, место, переходит на следующий уровень.Что такое лямбда

В дополнение к def, Python функцию, вы можете создать с помощью выражений, в том числе лямбда. Свое первоначальное название получила в честь лямбда-расчеты языка LISP.

Как def и lambda создает функцию, что можно будет назвать, но не связывает ли он свое имя. На практике, лямбда используют, когда нужно отложить выполнение фрагмента кода.

Основы лямбда-выражений

Внешний вид, лямбда-выражения напоминают инструкции def. Сначала пишется ключевое слово lambda, а затем аргументы, кишки и само выражение:>>>f = lambda x, y, z: x + y + z>>>f(2, 3, 4)9

Тело lambda представляет собой только выражение, а не блока. По этой причине лямбда ограничена возможностями, не столь универсален, как def. Она может быть реализована только логика, без цикла while или for.

Для лямбда закон, сходные с def правила поиск переменных. Имена, указанные вне выражения, являются глобальными внутри помещений, и они не влияют друг на друга.

Лямбда-выражение очень удобно для интеграции в программу. Благодаря небольшому размеру, они сводят к минимуму и упростить код. Но использование lambda не является основным. Python 3 для начинающих работы будет достаточно инструкции def.



Категория: Новости Tech