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

Funkce


Co jsou funkce?

Funkce jsou pohodlný způsob, jak rozdělit váš kód na užitečné bloky, což nám umožňuje uspořádat náš kód, učinit ho čitelnějším, znovu použít a ušetřit čas. Také funkce jsou klíčovým způsobem, jak definovat rozhraní, takže programátoři mohou sdílet svůj kód.

Jak píšete funkce v Pythonu?

Jak jsme viděli v předchozích tutoriálech, Python využívá bloky.

Blok je oblast kódu napsaná ve formátu:

block_head:
    1. řádek bloku
    2. řádek bloku
    ...

Kde řádek bloku je více Python kódu (dokonce další blok) a hlava bloku je ve formátu: block_keyword block_name(argument1,argument2, ...) Klíčová slova, která již znáte, jsou "if", "for", a "while".

Funkce v Pythonu jsou definovány pomocí klíčového slova "def", následovaného názvem funkce jako názvem bloku. Například:

def my_function():
    print("Hello From My Function!")

Funkce mohou také přijímat argumenty (proměnné předané volajícímu funkce). Například:

def my_function_with_args(username, greeting):
    print("Hello, %s , From My Function!, I wish you %s"%(username, greeting))

Funkce mohou vrátit hodnotu volajícímu pomocí klíčového slova 'return'. Například:

def sum_two_numbers(a, b):
    return a + b

Jak voláte funkce v Pythonu?

Jednoduše napište jméno funkce následované (), umístěním jakýchkoliv potřebných argumentů do závorek. Například, zavolejme funkce napsané výše (v předchozím příkladu):

# Definujeme naše 3 funkce
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

# tiskne jednoduché pozdravy
my_function()

# tiskne - "Hello, John Doe, From My Function!, I wish you a great year!"
my_function_with_args("John Doe", "a great year!")

# po této lince bude x mít hodnotu 3!
x = sum_two_numbers(1,2)

Cvičení

V tomto cvičení použijete existující funkci a přidáte vlastní funkci pro vytvoření plně funkčního programu.

  1. Přidejte funkci s názvem list_benefits(), která vrátí následující seznam řetězců: "Více organizovaný kód", "Čitelnější kód", "Snazší opětovné použití kódu", "Umožňuje programátorům sdílet a propojit kód dohromady"

  2. Přidejte funkci s názvem build_sentence(info), která přijímá jediný argument obsahující řetězec a vrací větu začínající daným řetězcem a končící řetězcem " je výhoda funkcí!"

  3. Spusťte a uvidíte, jak všechny funkce pracují společně!

# 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!

Previous Tutorial Next Tutorial Take the Test
Copyright © learnpython.org. Read our Terms of Use and Privacy Policy