Vytvoření tabulky data v LuckyTemplates
Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.
Funkce jsou základním konceptem v programování, který vám umožňuje spravovat a opakovaně používat bloky kódu. Vědět, jak volat funkci v Pythonu, je klíčová dovednost, kterou je třeba se naučit.
V tomto tutoriálu se naučíte základy volání funkcí spolu s několika tipy pro psaní efektivního kódu, který je srozumitelnější.
Zvládnutí funkcí vám nejen pomůže vytvořit všestrannější kód, ale také zefektivní váš programovací proces a zlepší vaši celkovou efektivitu jako vývojáře.
Funkce mají stejné základní principy a jakmile si osvojíte funkce v Pythonu, budete moci rozšířit své znalosti funkcí ve srovnání s jinými programovacími jazyky, jako je Java, R, JavaScript, PHP atd.
Obsah
Co je funkce?
Funkce v Pythonu vám umožňuje vytvářet opakovaně použitelné části kódu, které lze volat v rámci vašeho programu, zjednodušuje váš kód a zlepšuje čitelnost. Provádí konkrétní úkol nebo sadu úkolů a lze jej v rámci programu volat vícekrát.
Definování funkce v Pythonu
V Pythonu existují dvě hlavní kategorie funkcí:
Tato část se zaměřuje na uživatelem definované funkce. Naučíte se:
Syntaxe funkce
Klíčové slovo def
následované názvem funkce a závorkami vám umožňuje definovat funkci v Pythonu. Tělo funkce je odsazené a obsahuje kód, který se má provést při volání funkce. Níže je uveden příklad základní funkce v Pythonu:
def pozdrav(): print("Ahoj světe!") pozdrav()
Klíčové slovo def
definuje novou funkci s názvem greet. Třetí řádek kódu vyvolá funkci, která provede kód uvnitř funkce.
Řádek print
v kódu výše je také funkcí. Pokud však pracujete v prostředí Pythonu 2, je definováno jako příkaz. Později, v Pythonu 3, byl změněn z příkazu na funkci.
Parametry a argumenty
Parametry jsou zástupné symboly v definici funkce, zatímco argumenty jsou hodnoty předané při volání funkce.
Chcete-li zadat parametry, zahrňte je do závorek definice funkce a oddělte je čárkami, pokud existuje více parametrů. Když voláte funkci, poskytujete vstupní hodnoty zvané argumenty. Následující příklad ukazuje definování funkce, která přebírá dva parametry:
def add_numbers(a, b): return a+b
Příkaz return
v těle funkce vrátí sečtení dvou argumentů, které jsou do něj předány. Můžete si to představit jako kalkulačku, kde zadáváte hodnoty a na oplátku získáte požadovaný výsledek.
Po definování funkce ji můžeme zavolat s argumenty dle vlastního výběru.
add_numbers(3, 5)
Argument kwargů
kwargs
je zkratka pro „argumenty klíčových slov“ v Pythonu. Umožňuje vám rozšířit flexibilitu funkce tím, že umožňuje volajícímu zadat libovolný počet argumentů klíčových slov při volání funkce. Argumenty klíčového slova jsou předány funkci jako slovník.
V definici funkce můžete použít **
syntaxi s dvojitou hvězdičkou před názvem parametru k přijetí argumentů klíčových slov.
def my_function(**kwargs): pro klíč, hodnota v kwargs.items(): print(f"{key} = {value}") my_function(a=1, b=2, c=3)
V tomto příkladu kwargs
bude slovník obsahující argumenty klíčových slov předané funkci. Výstup je zobrazen na obrázku níže:
Volání funkce
Volání funkce znamená spuštění kódu uvnitř těla funkce. V Pythonu existují čtyři typy volání funkcí:
Volání základní funkce
Volání základní funkce vyvolá funkci bez předání jakýchkoli argumentů do funkce. Po definování funkce ji můžete volat pomocí jejího názvu následovaného závorkami.
Pokud funkce nebere žádné argumenty, závorky budou prázdné. Níže uvedený kód je příkladem základní funkce.
def welcome_message(): print("Vítejte v LuckyTemplates!") welcome_message()
Spuštěním výše uvedeného kódu získáte následující výstup:
Poziční argumenty
Poziční argumenty jsou nejběžnějším typem argumentů a jsou předány funkci ve stejném pořadí, v jakém jsou určeny. Následuje příklad volání funkce s pozičními argumenty:
def welcome_message(name): print(f"Vítejte v LuckyTemplates, {name}!") welcome_message("John")
Ve výše uvedeném příkladu welcome_message()
má funkce jeden argument, name
. Když tuto funkci zavoláte s argumentem John
, vytiskne se zpráva vedle názvu.
Výše uvedený kód poskytuje následující výstup:
Argumenty klíčových slov
Dalším způsobem, jak předat argumenty funkci, je použití klíčových slov argumenty. Argumenty klíčových slov vám umožňují zadat název parametru spolu s jeho hodnotou, čímž se kód stane čitelnějším a sníží se pravděpodobnost předání argumentů ve špatném pořadí.
Níže uvedený příklad používá k volání welcome_message
funkce argumenty klíčových slov:
def welcome_message(name, message='Vítejte v LuckyTemplates!'): print(zpráva, jméno) welcome_message(name='Alice', message='Dobré ráno')
V tomto příkladu jsme definovali funkci welcome_message()
, která má dva parametry, name
a message
. Parametr zprávy má výchozí argument Welcome to LuckyTemplates!
Při volání funkce používáme argumenty klíčových slov k předání hodnoty John
, výsledkem je výstupWelcome to LuckyTemplates! John.
Návratové hodnoty
Při práci s funkcemi budete často chtít vrátit výsledek operací v těle vaší funkce. Návratové hodnoty umožňují funkci poslat výsledek zpět volajícímu. Když pochopíte, jak pracovat s jednou a více návratovými hodnotami, můžete zlepšit funkčnost svých programů Python.
Jedna návratová hodnota
Jedna funkce návratové hodnoty vrací jednu hodnotu z operací ve funkci.
Níže je uveden příklad funkce jediné návratové hodnoty:
def get_greeting(name): return "Dobrý den, " + jméno + "!" pozdrav = get_greeting("Alice") tisk (pozdrav)
Ve výše uvedeném příkladu funkce get_greeting
převezme jméno, protože jej argument funkce zkompiluje a vrátí přizpůsobený pozdrav. Vrácená hodnota se pak uloží do proměnné pozdrav a vytiskne se do konzole.
Více návratových hodnot
Občas budete muset vrátit více než jednu hodnotu z funkce v Pythonu. Chcete-li toho dosáhnout, můžete k zabalení vrácených hodnot použít n-tici nebo seznam.
Následuje příklad funkce více návratových hodnot v programovacím jazyce Python.
def get_name_and_age(): return ("John", 30) jméno, věk = get_name_and_age() print(name) print(age)
V tomto příkladu get_name_and_age
je funkce, která vrací n-tici se dvěma hodnotami: a name
a an age
.
Můžete také vrátit . Níže uvedená funkce ukazuje návratovou hodnotu seznamu z funkce.
def vypočítat_oblasti(výška, šířka): return [výška * šířka, (výška * šířka) / 2] plocha, plocha_úhelníku = výpočtová_plocha(10, 5) tisk(oblast) tisk(oblast_trojúhelníku)
V tomto případě funkce calculate_areas
převezme dva argumenty, height
a width
a vrátí seznam obsahující obsah obdélníku a obsah trojúhelníku.
Předávání funkcí Pythonu jako argumentů
Python umožňuje předávat funkce jako argumenty jiným funkcím. Když funkce přijímá jinou funkci jako argument, označuje se jako funkce vyššího řádu.
Níže uvedený kód je příkladem předání funkce jiné funkci v Pythonu:
def square(x): return x * x def double(x): return x * 2 def apply_func(func, x): return func(x) výsledek = apply_func(čtverec, 5)
Vnořené funkce
Vnořené funkce jsou funkce definované v rámci jiné funkce, známé také jako vnitřní funkce. Ty mohou být užitečné při vytváření uzávěrů a modulárního kódu.
Chcete-li vytvořit vnořenou funkci, jednoduše definujte funkci v jiné funkci:
def vnější_funkce(x, y): def vnitřní_funkce(z): návrat x + y + z výsledek = vnitřní_funkce(3) návrat výsledek # Volání vnější funkce print(vnější_funkce(1, 2))
Ve výše uvedeném příkladu je vnitřní_funkce definována v rámci vnější_funkce. Vnitřní funkce má přístup k proměnným vnější funkce, což jí umožňuje provádět s nimi operace.
Funkce lambda
Funkce lambda, známé také jako anonymní funkce, představují způsob, jak v Pythonu vytvořit malé funkce pro jednorázové použití. V projektech datové vědy budete často pracovat s funkcemi Lambda pro vytváření efektivních datových struktur a kanálů.
Chcete-li vytvořit funkci lambda, můžete použít klíčové slovo lambda následované seznamem argumentů, dvojtečkou a poté výrazem. Výraz je to, co funkce lambda vrátí, jakmile je zavolána. Následuje příklad funkce lambda v Pythonu:
add = lambda a, b: a + b výsledek = add(3, 4) tisk (výsledek) # Výstup: 7
Ve výše uvedeném příkladu jsme vytvořili funkci lambda, která bere dva argumenty ( a
a b
) a vrací jejich součet. Tuto lambda funkci jsme přiřadili proměnné nazvané add
.
Lambda může být užitečná v následujících scénářích:
Následující příklad ukazuje použití funkce filter() vyššího řádu s lambda:
čísla = [1, 2, 3, 4, 5, 6, 7, 8, 9] sudá_čísla = seznam(filtr(lambda x: x % 2 == 0, čísla)) tisk(sudá_čísla) # Výstup: [2, 4, 6, 8]
V tomto příkladu jsme použili funkci lambda k definování kritérií filtrování pro funkci filter(). Funkce lambda zkontroluje, zda je číslo sudé, a funkce filter() vrátí nový seznam obsahující pouze sudá čísla.
Chcete-li vidět příklad toho, jak mohou být funkce užitečné v různých scénářích datové vědy, podívejte se na video uvedené níže:
Rekurze
Rekurze je technika v programování, kde funkce volá sama sebe. To může být užitečný způsob, jak vyřešit složité problémy jejich rozdělením na menší, identické dílčí problémy.
Při vytváření rekurzivní funkce musíte mít na paměti dvě věci: základní případ a rekurzivní případ.
Následující příklad ukazuje rekurzivní funkce v Pythonu:
def factorial(n): if n == 1: return 1 return n * factorial(n - 1) factorial(5)
V tomto příkladu je základní případ when n == 1
, a funkce vrací 1
. Rekurzivní případ nastane, když n není rovno 1 a funkce volá sama sebe pomocí n - 1
.
Běžné chyby a odstraňování problémů
Pokud jste začínající programátor, často narazíte na chyby při implementaci funkcí, jako jsou rekurzivní a lambda funkce. Následující části zdůrazňují několik běžných chyb a tipy pro odstraňování problémů, které vám pomohou je efektivně vyřešit.
1. TypeError: chybí požadovaný argument : K této chybě dochází, když nezadáte správný počet argumentů, které funkce očekává.
def my_function(fname, lname): print(fname, lname) # Správné volání my_function("John", "Doe") # Vyvolá chybu my_function("John")
Chcete-li tuto chybu opravit, ujistěte se, že své funkci předáváte správný počet argumentů.
2. TypeError: nepodporovaný typ operandu . K této chybě může dojít, když se pokoušíte použít operátor s nekompatibilními typy.
def add_number(a, b): return a + b # Správný výsledek volání = add_number(5, 3) print(result) # Vyvolá chybu kvůli nesprávným argumentům result = add_number("5", 3) print(result)
Chcete-li tuto chybu opravit, zkontrolujte, zda vaše funkce pracují se správnými datovými typy, a v případě potřeby zvažte použití přetypování
3. NameError: název 'název_funkce' není definován : Tato chyba naznačuje, že funkce nebyla definována před jejím voláním.
# Správná objednávka def pozdrav(): print("Dobrý den!") pozdrav() # Nesprávná objednávka sbohem() def sbohem(): print("Sbohem!")
Chcete-li tuto chybu opravit, ujistěte se, že je vaše funkce správně definována a že ji voláte po její definici.
Závěr
Následující body shrnují klíčové aspekty volání funkcí v Pythonu a pomohou vám upevnit vaše porozumění:
function_name()
).function_name(arg1, arg2)
).result = function_name(args)
).Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.
Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.
V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.
Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.
Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.
V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.
V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.
V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.
V tomto tutoriálu se budu zabývat konkrétní technikou, jak zobrazit kumulativní součet pouze do určitého data ve vašich vizuálech v LuckyTemplates.
Naučte se vytvářet a přizpůsobovat Bullet grafy v LuckyTemplates, které se používají hlavně pro měření výkonu oproti cílovým nebo předchozím rokům.