Як викликати функцію в Python (Приклад)
⚡ Розумний підсумок
Функції в Python – це блоки коду, які можна повторно використовувати та запускати під час виклику, визначені за допомогою оператора def. Вони приймають аргументи, повертають значення та покладаються на узгоджені відступи для групування операторів, що належать кожній функції.
Що таке функція в Python?
A Функція в Python — це фрагмент коду, який виконується при зверненні до нього. Він використовується для використання коду в кількох місцях програми. Його також називають методом або процедурою. Python надає багато вбудованих функцій, таких як print(), input(), compile() та exec(), але також дає вам свободу створювати власні функції.
Як визначити та викликати функцію в Python
Функція в Python визначається оператором "def", за яким йде ім'я функції та дужки (()).
приклад:
Давайте визначимо функцію за допомогою команди “def func1():” та викличемо її. Вивід функції буде таким: “Я навчаюся Python функція ”.
Виклик функції func1() викликає нашу функцію def func1(): та виводить команду «Я навчаюся» Python функція «Жодна».
Існує набір правил у Python Програмування щоб визначити функцію.
- Будь-які аргументи або вхідні параметри слід розміщувати в цих дужках.
- Перший оператор функції може бути необов'язковим оператором — рядком документації або рядком документації функції.
- Код у кожній функції починається з двокрапки (:) і має бути з відступом (пробілом).
- Оператор return (вираз) завершує функцію, опціонально передаючи значення назад тому, хто її викликає. Оператор return без аргументів такий самий, як return None.
Значення відступу (пробілу) в Python
Перш ніж ми ознайомимося з Python функції, важливо, щоб ми розуміли правило відступів для оголошення Python функцій, і ці правила застосовні до інших елементів Python а також, наприклад, оголошення умов, циклів або змінних.
Python дотримується певного стилю відступів для визначення коду. Оскільки Python Функції не мають явного початку чи кінця, як фігурні дужки, щоб вказати початок і зупинку функції, вони повинні покладатися на цей відступ. Тут ми розглянемо простий приклад з командою «print». Коли ми пишемо функцію «print» одразу під рядком def func1():, вона покаже «помилка відступу: очікувався блок з відступом».
Тепер, коли ви додасте відступ (пробіл) перед функцією «print», вона має друкуватися належним чином.
Принаймні одного відступу достатньо для успішної роботи вашого коду. Але як найкраща практика, бажано залишати приблизно 3–4 пробіли відступу для виклику вашої функції.
Також необхідно, щоб під час оголошення відступів ви зберігали той самий відступ для решти вашого коду. Наприклад, на скріншоті нижче, коли ми викликаємо інший оператор «все ще у функції func1», і він не оголошений одразу під першим оператором print, він покаже помилку відступів: «unindent не відповідає жодному іншому рівню відступів».
Тепер, коли ми застосовуємо однаковий відступ для обох операторів і вирівнюємо їх по одному рядку, це дає очікуваний результат.
Як функція повертає значення?
Команда повернення в Python вказує, яке значення повернути викликаючій функції. Давайте розберемося з цим на наступному прикладі.
Крок 1) Функція нічого не повертає
Тут ми бачимо, коли функція не «повертає» значення. Наприклад, нам потрібен квадрат числа 4, і результат має бути «16» під час виконання коду. Це відбувається, коли ми просто використовуємо код «print x*x», але коли ви викликаєте функцію «print square», вона повертає «None» як результат. Це тому, що під час виклику функції рекурсія не відбувається, і результат випадає в кінці функції. Python повертає «None» у разі випадання за межі кінця функції.
Крок 2) Замініть команду друку командою присвоєння
Щоб зробити це зрозумілішим, ми замінимо команду друку командою присвоєння. Давайте перевіримо вивід.
Коли ви виконуєте команду «print square (4)», вона фактично повертає значення об'єкта. Оскільки у нас немає жодної конкретної функції для виконання тут, вона повертає «None».
Крок 3) Використайте функцію «return» та виконайте код
Тепер ми побачимо, як отримати вивід за допомогою команди «return». Коли ви використовуєте функцію «return» та виконуєте код, вивід видасть «16».
Крок 4) Виконайте команду «надрукувати квадрат»
Функції в Python самі є об’єктом, а об’єкт має певну цінність. Ми побачимо тут, як Python обробляє об'єкт. Коли ви виконуєте команду «print square», вона повертає значення об'єкта. Оскільки ми не передали жодного аргументу, у нас немає жодної конкретної функції для виконання тут, тому вона повертає значення за замовчуванням (0x021B2D30), яке є розташуванням об'єкта. На практиці Python програму, вам, ймовірно, ніколи не знадобиться цього робити.
Аргументи у функціях
Аргумент — це значення, яке передається функції під час її виклику.
Іншими словами, на стороні виклику це аргумент, а на стороні функції – параметр.
Давайте подивимося, як Python аргументи працюють.
Крок 1) Аргументи оголошуються у визначенні функції. Під час виклику функції можна передавати значення цих аргументів, як показано нижче.
Крок 2) Щоб оголосити значення за замовчуванням для аргументу, призначте йому значення у визначенні функції.
приклад: x не має значення за замовчуванням. Значення за замовчуванням y=0. Коли ми надаємо лише один аргумент під час виклику функції множення, Python присвоює надане значення x, поки keeping значення y=0. Отже, множення x*y=0.
Крок 3) Цього разу ми змінимо значення на y=2 замість значення за замовчуванням y=0, і результат повернеться як (4×2)=8.
Крок 4) Ви також можете змінити порядок, у якому передаються аргументи. PythonТут ми змінили порядок значень x та y на x=4 та y=2.
Крок 5) Кілька аргументів також можна передати як масив. У цьому прикладі ми викликаємо кілька аргументів (1,2,3,4,5) за допомогою функції (*args).
приклад: Ми оголосили кілька аргументів як числа (1,2,3,4,5); коли ми викликаємо функцію (*args), вона виводить результат як (1,2,3,4,5).
Порада:
- In Python У версії 2.7 перевантаження функцій не підтримується. Перевантаження функцій — це можливість створювати кілька методів з однаковою назвою та різною реалізацією. Перевантаження функцій повністю підтримується в Python 3.
- Існує певна плутанина між методами та функціями. Методи в Python пов'язані з екземплярами об'єктів, тоді як функції не пов'язані. Коли Python викликає метод, він прив’язує перший параметр цього виклику до відповідного посилання на об’єкт. Простими словами, окрема функція в Python є «функцією», тоді як функція, яка є атрибутом класу або екземпляра, є «методом».
Ось повне Python 3 код
#define a function
def func1():
print ("I am learning Python function")
print ("still in func1")
func1()
def square(x):
return x*x
print(square(4))
def multiply(x,y=0):
print("value of x=",x)
print("value of y=",y)
return x*y
print(multiply(y=2,x=4))
Ось повне Python 2 код
#define a function
def func1():
print " I am learning Python function"
print " still in func1"
func1()
def square(x):
return x*x
print square(4)
def multiply(x,y=0):
print"value of x=",x
print"value of y=",y
return x*y
print multiply(y=2,x=4)















