Функції#
Вступ#
Функції є фундаментальним компонентом програмування на Python, вони упаковують фрагменти коду в багаторазові, ефективні розділи коду, призначені для виконання певного завдання. Функції можна викликати кілька разів у програмі, що спрощує організацію коду та допомагає уникнути повторень коду. Функції також полегшують налагодження коду.
Важливо: Одне лише визначення функції не забезпечує її виконання. Використовуйте start_thread, щоб запустити функцію в новому потоці, щоб вона почала виконуватися одразу на початку проекту, а не чекала на подію чи зворотний виклик.
defвизначає функцію.returnнадсилає вивід функції назад до головної програми.
Використання:
def function_name(parameters):
# Code to execute when the function is called
return result # Optional, used to return a value
Параметри |
Опис |
|---|---|
|
Назва, яку ви даєте своїй функції. |
|
Необов’язково. Змінні, які приймають вхідні значення під час виклику функції, що дозволяє передавати дані у функцію. |
|
Необов’язково. Дозволяє функції надсилати результат назад викликаючій функції. Якщо функція не містить оператора return, вона за замовчуванням поверне |
Примітка: Функцію завжди потрібно визначити перед її викликом.
Визначення та виклик функцій#
Functions with No Parameters#
Якщо функція не потребує вводу, її можна визначити без параметрів.
def greeting():
console.print("Hello!")
# Call the greeting function
greeting()
Functions with Parameters#
Ви також можете додавати параметри до функцій, які дозволяють передавати інформацію, необхідну для роботи функції.
def move_square(moves):
for index in range(moves):
drivetrain.drive_for(FORWARD, 150)
drivetrain.turn_for(RIGHT, 90)
# Call the move_square function
move_square(4)
Functions with Default Arguments#
Аргумент за замовчуванням — це параметр, який приймає значення за замовчуванням, якщо значення не вказано у виклику функції для цього аргументу.
def move_square(moves=4):
for index in range(moves):
drivetrain.drive_for(FORWARD, 150)
drivetrain.turn_for(RIGHT, 90)
# Call the move_square function
move_square()
Return Values from Functions#
Функції можуть надсилати дані назад викликаючій функції за допомогою ключового слова return Це дозволяє вам записувати та використовувати вивід у вашій програмі.
def times_two(number):
return number * 2
# Display the return value
console.print(times_two(2))
початковий_потік#
start_thread запускає функцію в новому потоці, тому вона починає виконуватися одразу на початку проекту.
Якщо використовується більше одного start_thread , функції виконуватимуться одночасно.
Usage:
start_thread(function)
Параметр |
Опис |
|---|---|
|
Ім’я раніше визначеної функції. |
def move_square():
# Move in a square path
while True:
drivetrain.drive_for(FORWARD, 150)
drivetrain.turn_for(RIGHT, 90)
def lights():
# Blink Optical Sensor lights
while True:
optical_sensor.set_light(LEDStateType.ON)
wait(0.5, SECONDS)
optical_sensor.set_light(LEDStateType.OFF)
wait(0.5, SECONDS)
# Start threads — Do not delete
start_thread(move_square)
start_thread(lights)