Як викликати функцію в Python (Приклад)

⚡ Розумний підсумок

Функції в Python – це блоки коду, які можна повторно використовувати та запускати під час виклику, визначені за допомогою оператора def. Вони приймають аргументи, повертають значення та покладаються на узгоджені відступи для групування операторів, що належать кожній функції.

  • 🧩 твердження def: Функція визначається за допомогою def, імені та дужок, за якими йде двокрапка, що відкриває блок операторів з відступом.
  • 📞 Виклик функцій: Запис назви функції, після якої слідують дужки, запускає її код, тому ту саму логіку можна використовувати багато разів.
  • ⌨️ Відступ: Python групує тіло функції за допомогою послідовного відступу замість фігурних дужок, тому відсутній пробіл викликає помилку IndentationError.
  • 🎯 аргументи: Значення, передані в дужках, стають параметрами, а значення за замовчуванням або ключові аргументи роблять кожен виклик гнучким.
  • ↩️ Повернуті значення: Оператор return передає результат назад викликаючій функції; без нього функція повертає None.
  • 🤖 Допомога AI: Помічники штучного інтелекту, такі як GitHub Copilot, генерують скелети функцій, аргументи та рядки документації з короткого запиту.

Як викликати функцію в Python

Що таке функція в Python?

A Функція в Python — це фрагмент коду, який виконується при зверненні до нього. Він використовується для використання коду в кількох місцях програми. Його також називають методом або процедурою. Python надає багато вбудованих функцій, таких як print(), input(), compile() та exec(), але також дає вам свободу створювати власні функції.

Як визначити та викликати функцію в Python

Функція в Python визначається оператором "def", за яким йде ім'я функції та дужки (()).

приклад:

Давайте визначимо функцію за допомогою команди “def func1():” та викличемо її. Вивід функції буде таким: “Я навчаюся Python функція ”.

Визначення та виклик функції в Python

Виклик функції func1() викликає нашу функцію def func1(): та виводить команду «Я навчаюся» Python функція «Жодна».

Існує набір правил у Python Програмування щоб визначити функцію.

  • Будь-які аргументи або вхідні параметри слід розміщувати в цих дужках.
  • Перший оператор функції може бути необов'язковим оператором — рядком документації або рядком документації функції.
  • Код у кожній функції починається з двокрапки (:) і має бути з відступом (пробілом).
  • Оператор return (вираз) завершує функцію, опціонально передаючи значення назад тому, хто її викликає. Оператор return без аргументів такий самий, як return None.

Значення відступу (пробілу) в Python

Перш ніж ми ознайомимося з Python функції, важливо, щоб ми розуміли правило відступів для оголошення Python функцій, і ці правила застосовні до інших елементів Python а також, наприклад, оголошення умов, циклів або змінних.

Python дотримується певного стилю відступів для визначення коду. Оскільки Python Функції не мають явного початку чи кінця, як фігурні дужки, щоб вказати початок і зупинку функції, вони повинні покладатися на цей відступ. Тут ми розглянемо простий приклад з командою «print». Коли ми пишемо функцію «print» одразу під рядком def func1():, вона покаже «помилка відступу: очікувався блок з відступом».

Визначення та виклик функції в Python

Тепер, коли ви додасте відступ (пробіл) перед функцією «print», вона має друкуватися належним чином.

Визначення та виклик функції в Python

Принаймні одного відступу достатньо для успішної роботи вашого коду. Але як найкраща практика, бажано залишати приблизно 3–4 пробіли відступу для виклику вашої функції.

Також необхідно, щоб під час оголошення відступів ви зберігали той самий відступ для решти вашого коду. Наприклад, на скріншоті нижче, коли ми викликаємо інший оператор «все ще у функції func1», і він не оголошений одразу під першим оператором print, він покаже помилку відступів: «unindent не відповідає жодному іншому рівню відступів».

Визначення та виклик функції в Python

Тепер, коли ми застосовуємо однаковий відступ для обох операторів і вирівнюємо їх по одному рядку, це дає очікуваний результат.

Визначення та виклик функції в Python

Як функція повертає значення?

Команда повернення в Python вказує, яке значення повернути викликаючій функції. Давайте розберемося з цим на наступному прикладі.

Крок 1) Функція нічого не повертає

Тут ми бачимо, коли функція не «повертає» значення. Наприклад, нам потрібен квадрат числа 4, і результат має бути «16» під час виконання коду. Це відбувається, коли ми просто використовуємо код «print x*x», але коли ви викликаєте функцію «print square», вона повертає «None» як результат. Це тому, що під час виклику функції рекурсія не відбувається, і результат випадає в кінці функції. Python повертає «None» у разі випадання за межі кінця функції.

Визначення та виклик функції в Python

Крок 2) Замініть команду друку командою присвоєння

Щоб зробити це зрозумілішим, ми замінимо команду друку командою присвоєння. Давайте перевіримо вивід.

Визначення та виклик функції в Python

Коли ви виконуєте команду «print square (4)», вона фактично повертає значення об'єкта. Оскільки у нас немає жодної конкретної функції для виконання тут, вона повертає «None».

Крок 3) Використайте функцію «return» та виконайте код

Тепер ми побачимо, як отримати вивід за допомогою команди «return». Коли ви використовуєте функцію «return» та виконуєте код, вивід видасть «16».

Визначення та виклик функції в Python

Крок 4) Виконайте команду «надрукувати квадрат»

Функції в Python самі є об’єктом, а об’єкт має певну цінність. Ми побачимо тут, як Python обробляє об'єкт. Коли ви виконуєте команду «print square», вона повертає значення об'єкта. Оскільки ми не передали жодного аргументу, у нас немає жодної конкретної функції для виконання тут, тому вона повертає значення за замовчуванням (0x021B2D30), яке є розташуванням об'єкта. На практиці Python програму, вам, ймовірно, ніколи не знадобиться цього робити.

Визначення та виклик функції в Python

Аргументи у функціях

Аргумент — це значення, яке передається функції під час її виклику.

Іншими словами, на стороні виклику це аргумент, а на стороні функції – параметр.

Давайте подивимося, як Python аргументи працюють.

Крок 1) Аргументи оголошуються у визначенні функції. Під час виклику функції можна передавати значення цих аргументів, як показано нижче.

Визначення та виклик функції в Python

Крок 2) Щоб оголосити значення за замовчуванням для аргументу, призначте йому значення у визначенні функції.

Визначення та виклик функції в Python

приклад: x не має значення за замовчуванням. Значення за замовчуванням y=0. Коли ми надаємо лише один аргумент під час виклику функції множення, Python присвоює надане значення x, поки keeping значення y=0. Отже, множення x*y=0.

Визначення та виклик функції в Python

Крок 3) Цього разу ми змінимо значення на y=2 замість значення за замовчуванням y=0, і результат повернеться як (4×2)=8.

Визначення та виклик функції в Python

Крок 4) Ви також можете змінити порядок, у якому передаються аргументи. PythonТут ми змінили порядок значень x та y на x=4 та y=2.

Визначення та виклик функції в Python

Крок 5) Кілька аргументів також можна передати як масив. У цьому прикладі ми викликаємо кілька аргументів (1,2,3,4,5) за допомогою функції (*args).

приклад: Ми оголосили кілька аргументів як числа (1,2,3,4,5); коли ми викликаємо функцію (*args), вона виводить результат як (1,2,3,4,5).

Визначення та виклик функції в Python

Порада:

  • 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)

Поширені запитання

Так. A Python Функція може повертати кілька значень, розділяючи їх комами після ключового слова return. Python упаковує їх у кортеж, який викликаюча сторона може розпакувати в окремі змінні, наприклад a, b = func().

Функція *args збирає додаткові позиційні аргументи в кортеж, тоді як функція **kwargs збирає додаткові ключові аргументи в словник. Обидва дозволяють функції приймати змінну кількість вхідних даних, а назви args та kwargs є лише домовленістю, а не вимогою.

Рядок документації — це рядковий літерал, який розміщується як перший оператор усередині функції для документування її дій. Він записується в потрійних лапках і може бути прочитаний під час виконання через атрибут функції __doc__ або функцію help().

Лямбда — це невелика анонімна функція, визначена в одному рядку з ключовим словом lambda замість def. Вона підходить для короткої, одноразової логіки, що передається таким функціям, як map(), filter() та sorted(). Див. це лямбда-функція путівник

Так. Функція, яка викликає саму себе, є рекурсивною функцією. Рекурсія вирішує задачі, які розбиваються на менші подібні підзадачі, такі як факторіали. Кожна рекурсивна функція потребує базового випадку, який зупиняє виклики, інакше Python викликає помилку RecursionError.

Локальна змінна створюється всередині функції та існує лише під час виконання цієї функції. Глобальна змінна визначена поза всіма функціями та видима скрізь. Щоб змінити глобальну змінну всередині функції, спочатку оголосіть її за допомогою ключового слова global.

GitHub Copilot пропонує повне тіло функції, виходячи з її назви або короткого коментаря, включаючи параметри, оператори повернення та рядки документації. Він також пропонує обробку крайніх випадків та тести, що дозволяє зосередитися на логіці, а не на вібрації.ping шаблонні блоки визначення.

Функції організовують код штучного інтелекту та машинного навчання в кроки повторного використання, такі як завантаження даних, попередня обробка, навчання та оцінка. Вони забезпечують читабельність та можливість тестування експериментів, а фреймворки, такі як TensorFlow та scikit-learn, розкривають більшу частину своєї поведінки через функції з влучними назвами, які ви викликаєте.

Підсумуйте цей пост за допомогою: