Функции в Python

Функция является одной из основных концепций языка программирования. Функции - это «автономные» модули кода, которые выполняют отдельный сервис. Это математическая концепция, которая группирует коллекцию операций в полезную идентичность, что упрощает другие математические выражения. Функция используется для разделения различных функциональных возможностей программы и часто объединяется для выполнения более сложных задач. Большинство языков программирования снабжены заранее написанным набором функций, хранящихся в библиотеке. Эти функции используются для устранения повторяемости что приводит к меньшему количеству строк кода, простоте использования и улучшенному обслуживанию. Все функции программирования имеют вход и выход. Функция содержит инструкции, используемые для создания Вывод:а с его ввода. Вы также можете написать свои собственные функции для выполнения специализированных задач .

Функции в Python

Функция определяется с помощью ключевого слова block «def» , за которым следует имя функции, за которым следует набор круглых скобок, в которых хранятся любые параметры, которые функция выполняет и заканчивается двоеточием. Далее следует блок операторов, которые являются частью этой функции. Функции могут возвращать значение вызывающему, используя ключевое слово - «возврат».

def function-name(Parameter list):
statements
return [expression]

Пример:

def sayHello();
print("Hello World!!")

Здесь функция теперь полностью определена, но если мы запустим программу в этот момент, ничего не произойдет, так как мы не вызываем эту функцию. Таким образом, за пределами определенного функционального блока давайте назовем функцию с помощью sayHello ()

Пример:

def sayHello();
print("Hello World!!")
sayHello() # call the function here

Вывод:

Hello World!!

Параметры функции Python

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

Пример:

def findSum(x,y):
z=x+y
print("Sum of numers are :" ,z)
findSum(10,20)
findSum(100,50)
findSum(4,2)

Вывод:

Sum of numers are : 30
Sum of numers are : 150
Sum of numers are : 6

Пример:

def dispStatus(name,age):
print("Name is :" ,name)
print("Age is :" ,age)
dispStatus("John",35)
dispStatus("Doe",50)

Вывод:

Name is : John
Age is : 35
Name is : Doe
Age is : 50

Значения аргумента по умолчанию

Мы также можем предоставить значения по умолчанию для параметров функции в Python в случае, если пользователь не хочет предоставлять для них значения. Это делается с помощью значений аргументов по умолчанию. Значение по умолчанию назначается с помощью оператора присваивания (=).

Пример:

def dispStatus(name,age=25):
print("Name is :" ,name)
print("Age is :" ,age)
dispStatus("John")
dispStatus("Doe")

Вывод:

Name is : John
Age is : 25
Name is : Doe
Age is : 25

Основным преимуществом аргумента по умолчанию является то, что мы можем давать значения только тем параметрам, к которым мы хотим, при условии, что другие параметры имеют значения аргументов по умолчанию.

Пример:

def dispStatus(name,age=25):
print("Name is :" ,name)
print("Age is :" ,age)
dispStatus("John")
dispStatus("Doe",34)
dispStatus("Doe",age=50)

Вывод:

Name is : John
Age is : 25
Name is : Doe
Age is : 34
Name is : Doe
Age is : 50

Переменная количество аргументов

Иногда программам может понадобиться определить функцию, которая может принимать любое количество параметров, то есть переменное количество аргументов, это может быть достигнуто с помощью звезд (*). Это очень полезно, когда мы не знаем точное количество аргументов, которые будут переданы функции.

Пример:

import math
def dispSquare(*varArgs):
#iterate through all the items
for num in varArgs:
print("The square of the number is :" , num*num )
dispSquare(2,4,6,8,10)

Вывод:

The square of the number is : 4
The square of the number is : 16
The square of the number is : 36
The square of the number is : 64
The square of the number is : 100

Возврат функции в Python

Вы можете не только передать значение параметра в функцию, но и функцию. Оператор return используется для возврата из функции. За оператором return следует выражение, которое оценивается.

Пример:

def findSum(x,y):
return x+y
print(findSum(10,20))
print(findSum(100,50))
print(findSum(4,2))

Вывод:

30
150
6

Внутренние функции

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

Пример:

def calc(x,y):
def findSum(x,y):
return x+y
sum = findSum(x,y)
print("Sum of ", x, " + ", y, " is ", sum)
calc(10,20)

Вывод:

Sum of 10 + 20 is 30

Если вы попытаетесь вызвать функцию findSum (10.20):

Вывод:

Traceback (most recent call last):
File "sample.py", line 8, in < module >
findSum(10,20)
NameError: name 'findSum' is not defined

Назначение функций переменным

Когда вы назначаете функцию переменной, вы не используете (), а просто имя функции.

Пример:

def findSum(x,y):
return x+y
f1 = findSum(10,20)
print(f1)
f1 = findSum(40,20)
print(f1)

Вывод:

30
60

Функции как параметры

Есть ситуации, когда мы должны передавать функции как параметры другим функциям.

Пример:

def sayHello(func):
return "Hello " + func
def sayName(name):
return name
print (sayHello(sayName("John")))

Вывод:

Hello John

 

 

Источник: net-informations.com

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector