кодесурса
«Python

Пользовательские функции Python

script1adsense2code
script1adsense3code

Вступление

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

Пользовательская функция

  • В Python объявление пользовательской функции начинается с ключевого слова def, за которым следует имя функции.
  • Функция может принимать аргументы в качестве входных данных в открывающих и закрывающих скобках, сразу после имени функции, за которым следует двоеточие.
  • После определения имени функции и аргументов (ей) блок оператора (ов) программы начинается со следующей строки, и эти операторы должны иметь отступ.

Вот синтаксис определенной пользователем функции.

Синтаксис:

 def имя_функции (аргумент1, аргумент2, ...):
  statement_1
  statement_2
  .... 

Вызвать функцию

Вызов функции в Python аналогичен другим языкам программирования, используя имя функции, круглые скобки (открытие и закрытие) и параметр (ы). Смотрите синтаксис, а затем пример.

Синтаксис:

 
имя_функции (arg1, arg2)

Пример:

def avg_number(x, y):
    print("Average of ",x," and ",y, " is ",(x+y)/2)
avg_number(3, 4)

Выход:

 Среднее 3 и 4 3,5 

Объяснение:

1. Строки 1-2: Детали (определение) функции.
2. Строка 3: вызов функции.
3. Строка 1: передать параметры: х = 3, у = 4
4. Строка 2: выведите значение двух параметров, а также их среднее значение.

Функция без аргументов:

Следующая функция не имеет аргументов.

def имя_функции ():
statement_1
statement_2
....

Пример:

def printt():
    print("This is Python 3.2 Tutorial")
    print("This is Python 3.2 Tutorial")
    print("This is Python 3.2 Tutorial")
printt()

Выход:

 Это Python 3.2 Tutorial
               Это Python 3.2 Tutorial
               Это Python 3.2 Tutorial 

Объяснение:

1. Строки 1-4: детали (определение) функции.
2. Строка 5: вызов функции.
3. Строка 1: параметры не передаются.
4. Строка 2-4: выполнить три оператора печати.

Оператор Return в функции

В Python оператор return (слово return, за которым следует выражение.) Используется для возврата значения из функции, оператор return без аргумента выражения не возвращает ничего. Смотрите синтаксис.

def имя_функции (аргумент1, аргумент2, ...):
statement_1
statement_2
....
возвращаемое выражение

имя_функции (arg1, arg2)

Пример:

Следующая функция возвращает квадрат суммы двух чисел.

def nsquare(x, y):
    return (x*x + 2*x*y + y*y)
print("The square of the sum of 2 and 3 is : ", nsquare(2, 3))
 

Выход:

 Квадрат суммы 2 и 3: 25 

Объяснение:

1. Строки 1-2: Детали (определение) функции.
2. Строка 3: вызов функции внутри оператора печати.
3. Строка 1: передать параметры x = 2, y = 3
4. Строка 2: вычислить и вернуть значение (x + y) 2

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

В списке параметров функции мы можем указать значения по умолчанию для одного или нескольких аргументов. Значение по умолчанию может быть записано в формате «аргумент1 = значение», поэтому у нас будет возможность объявить или не объявить значение для этих аргументов. Смотрите следующий пример.

Пример:

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

def nsquare(x, y = 2):
    return (x*x + 2*x*y + y*y)
print("The square of the sum of 2 and 2 is : ", nsquare(2))
print("The square of the sum of 2 and 3 is : ", nsquare(2,4))

Выход:

 Квадрат суммы 2 и 2: 16
               Квадрат суммы 2 и 4: 36 

Объяснение:

Строки 1-2: Детали (определение) функции.

Для первого заявления на печать [Строка № 3]
Строка 3: вызов функции без второго аргумента внутри оператора print.
Строка 1: передать параметры x = 2, значение по умолчанию.
Строка 2: вычислить и вернуть значение (x + y) 2

Для второго оператора печати [Строка № 4]
Строка 3: вызов функции со всеми аргументами внутри оператора print.
Строка 1: передать параметры x = 2, y = 4.
Строка 2: вычислить и вернуть значение (x + y) 2

Ключевое слово Аргументы:

Мы уже узнали, как использовать значения аргументов по умолчанию, функции также можно вызывать с помощью аргументов ключевых слов. Аргументы, которым предшествует имя переменной и знак «=» (например, var_name = "), называются ключевыми аргументами.

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

Пример:

def marks(english, math = 85, science = 80):
print('Marks in : English is - ', english,', Math - ',math, ', Science - ',science)
marks(71, 77)
marks(65, science = 74)
marks(science = 70, math = 90, english = 75)

Выход:

 Оценка: английский - 71, математика - 77, наука - 80
Оценка: английский - 65, математика - 85, наука - 74
Оценка по: английский - 75, математика - 90, наука - 70 

Объяснение:

Строка 1: функция именованных меток имеет три параметра, в первом параметре (на английском языке) нет значения по умолчанию, но остальные параметры имеют значения по умолчанию (математика = 85, наука = 80).
Строка 3: параметр english получает значение 71, математика получает значение 77, а наука получает значение по умолчанию 80.
Строка 4: параметр english получает значение 65, математика получает значение по умолчанию 85, а наука получает значение 74 благодаря аргументам ключевых слов.
Строка 5: здесь мы используем три ключевых аргумента, а параметр english получает значение 75, математика получает значение 90, а наука получает значение 70.

Списки произвольных аргументов:

Список произвольных аргументов - это еще один способ передачи аргументов в функцию. В теле функции эти аргументы будут заключены в кортеж, и его можно определить с помощью конструкции * args. Перед этой переменной вы можете определить количество аргументов или не аргумент.

Пример:

def sum(*numbers):
     s = 0
     for n in numbers:
           s += n
     return s
print(sum(1,2,3,4))

Выход:

 10 

Лямбда-формы:

В Python небольшие анонимные (безымянные) функции могут быть созданы с помощью ключевого слова lambda. Лямбда-формы могут быть использованы в качестве аргумента для другой функции, где требуются функциональные объекты, но синтаксически они ограничены одним выражением. Функция как это:

def average(x, y):
    return (x + y)/2
print(average(4, 3))

также может быть определено с помощью лямбда


print((lambda x, y: (x + y)/2)(4, 3))

Выход:

 3,5 

Строки документации Python

В Python строковый литерал используется для документирования модуля, функции, класса или метода. Вы можете получить доступ к строковым литералам по атрибуту объекта __doc__ (обратите внимание на двойное подчеркивание) (например, my_function .__ doc__).

Соглашения о документах:

- Строковые литералы должны быть заключены в тройную кавычку. Документы должны быть информативными

- Первая строка может кратко описать цель объекта. Строка должна начинаться с заглавной буквы и заканчиваться точкой.

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

Смотрите следующий пример с многострочной строкой документации.

def avg_number(x, y):
    """Calculate and Print Average of two Numbers.
    
    Created on 29/12/2012. python-docstring-example.py
    """
    print("Average of ",x," and ",y, " is ",(x+y)/2)
«питон

Предыдущая: Наборы Python
Далее: Модуль Python

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code