Функции


Что такое функции?

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

Как вы пишете функции на Python?

Как мы видели в предыдущих уроках, Python использует блоки.

Блок - это область кода, записанная в формате:

block_head: 1st block line 2nd block line ...
1
2
3
4
block_head :
1- я квартальная линия
2- я блок- линия
...
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Если строка блока - это больше кода Python (даже другой блок), а заголовок блока имеет следующий формат: ключевое_слово блока имя_блока (аргумент1, аргумент2, ...) Ключевые слова блока, которые вы уже знаете, - это «если», «для» и "в то время как".

Функции в python определяются с помощью ключевого слова блока «def», за которым следует имя функции в качестве имени блока. Например:

def my_function(): print("Hello From My Function!")
1
2
def my_function ( ) :
print ( "Привет от моей функции!" )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Функции также могут получать аргументы (переменные, переданные от вызывающего в функцию). Например:

def my_function_with_args(username, greeting): print("Hello, %s , From My Function!, I wish you %s"%(username, greeting))
1
2
def my_function_with_args ( имя пользователя , приветствие ) :
print ( "Привет,% s, из моей функции !, желаю тебе
% s " % ( имя пользователя , приветствие ))
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Функции могут возвращать значение вызывающей стороне, используя ключевое слово return. Например:

def sum_two_numbers(a, b): return a + b
1
2
def sum_two_numbers ( a , b ) :
вернуть a + b
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Как вы вызываете функции в Python?

Просто напишите имя функции, за которым следует (), заключив все необходимые аргументы в квадратные скобки. Например, вызовем функции, написанные выше (в предыдущем примере):

# Define our 3 functions def my_function(): print("Hello From My Function!") def my_function_with_args(username, greeting): print("Hello, %s, From My Function!, I wish you %s"%(username, greeting)) def sum_two_numbers(a, b): return a + b # print(a simple greeting) my_function() #prints - "Hello, John Doe, From My Function!, I wish you a great year!" my_function_with_args("John Doe", "a great year!") # after this line x will hold the value 3! x = sum_two_numbers(1,2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# Определим наши 3 функции
def my_function ( ) :
print ( "Привет от моей функции!" )
def my_function_with_args ( имя пользователя , приветствие ) :
print ( "Привет,% s, из моей функции !, желаю тебе
% s " % ( имя пользователя , приветствие ))
def sum_two_numbers ( a , b ) :
вернуть a + b
# print (простое приветствие)
моя_функция ( )
#prints - "Привет, Джон Доу, из моей функции!"
желаю вам удачного года! "
my_function_with_args ( «Джон Доу» , «отличный год!» )
# после этой строки x будет содержать значение 3!
х = сумма_два_числа ( 1 , 2 )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Упражнение

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

  1. Добавьте функцию с именем, list_benefits()которая возвращает следующий список строк: «Более организованный код», «Более читаемый код», «Упрощенное повторное использование кода», «Разрешить программистам совместно использовать и соединять код вместе».

  2. Добавьте функцию с именем, build_sentence(info)которая получает единственный аргумент, содержащий строку, и возвращает предложение, начинающееся с данной строки и заканчивающееся строкой "это преимущество функций!"

  3. Запустите и посмотрите, как все функции работают вместе!