Get started learning Python with DataCamp's free Intro to Python tutorial. Learn Data Science by completing interactive coding challenges and watching videos by expert instructors. Start Now!
This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join 11 million other learners and get started learning Python for data science today!
Good news! You can save 25% off your Datacamp annual subscription with the code LEARNPYTHON23ALE25 - Click here to redeem your discount
Функції
Що таке функції?
Функції — це зручний спосіб розділити ваш код на корисні блоки, що дозволяє нам упорядковувати код, робити його більш читабельним, повторно використовуваним та економити час. Також функції є ключовим способом визначення інтерфейсів, завдяки яким програмісти можуть ділитися своїм кодом.
Як писати функції в Python?
Як ми вже розглядали в попередніх навчальних посібниках, Python використовує блоки.
Блок — це область коду, написана у форматі:
block_head:
1-й рядок блоку
2-й рядок блоку
...
Де рядок блоку — це інший код Python (навіть інший блок), а заголовок блоку має такий формат: block_keyword block_name(argument1,argument2, ...) Вже відомі вам ключові слова блоку — це "if", "for" і "while".
Функції в Python визначаються за допомогою ключового слова блоку "def", за яким слідує ім'я функції як ім'я блоку. Наприклад:
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))
Функції можуть повертати значення виклику за допомогою ключового слова 'return'. Наприклад:
def sum_two_numbers(a, b):
return a + b
Як викликати функції в Python?
Просто напишіть ім'я функції з наступними () і вкажіть усі необхідні аргументи в дужках. Наприклад, давайте викличемо функції, написані вище (в попередньому прикладі):
# Визначаємо наші 3 функції
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
# вивести просте привітання
my_function()
# виведе - "Hello, John Doe, From My Function!, I wish you a great year!"
my_function_with_args("John Doe", "a great year!")
# після цього рядка x отримає значення 3!
x = sum_two_numbers(1,2)
Вправа
У цій вправі ви будете використовувати існуючу функцію і додавати свою власну, щоб створити повністю функціональну програму.
-
Додайте функцію
list_benefits()
, яка повертає наступний список рядків: "Більш організований код", "Більш читабельний код", "Легше повторне використання коду", "Дозволяє програмістам ділитися та з'єднувати код разом". -
Додайте функцію
build_sentence(info)
, яка приймає один аргумент, що містить рядок, і повертає речення, яке починається з наданого рядка та закінчується рядком " є перевагою функцій!". -
Запустіть та перевірте, як всі функції працюють разом!
# Modify this function to return a list of strings as defined above
def list_benefits():
return []
# Modify this function to concatenate to each benefit - " is a benefit of functions!"
def build_sentence(benefit):
return ""
def name_the_benefits_of_functions():
list_of_benefits = list_benefits()
for benefit in list_of_benefits:
print(build_sentence(benefit))
name_the_benefits_of_functions()
# Modify this function to return a list of strings as defined above
def list_benefits():
return "More organized code", "More readable code", "Easier code reuse", "Allowing programmers to share and connect code together"
# Modify this function to concatenate to each benefit - " is a benefit of functions!"
def build_sentence(benefit):
return "%s is a benefit of functions!" % benefit
def name_the_benefits_of_functions():
list_of_benefits = list_benefits()
for benefit in list_of_benefits:
print(build_sentence(benefit))
name_the_benefits_of_functions()
test_output_contains("More organized code is a benefit of functions!")
test_output_contains("More readable code is a benefit of functions!")
test_output_contains("Easier code reuse is a benefit of functions!")
test_output_contains("Allowing programmers to share and connect code together is a benefit of functions!")
success_msg("Nice work!")
This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join over a million other learners and get started learning Python for data science today!