Zagnieżdżone funkcje w Pythonie
Aby skrócić kod, można podczas wywoływania zagnieżdżać funkcje w sobie.
Załóżmy, że mamy funkcje do podnoszenia liczby do kwadratu, do sześcianu oraz do sumowania dwóch liczb:
def square(num):
return num ** 2
def cube(num):
return num ** 3
def add(num1, num2):
return num1 + num2
Aby uzyskać sumę kwadratu i sześcianu liczby,
możemy zagnieździć je w parametrze funkcji add
podczas jej wywoływania:
res = add(square(2), cube(4))
print(res) # wyświetli 68
Ponadto, można wywoływać funkcje również w
ciele innej funkcji. Przepiszmy
poprzedni przykład i wywołajmy funkcje wewnątrz
add:
def add(num1, num2):
return square(num1) + cube(num2)
res = add(2, 4)
print(res) # wyświetli 68
Stwórz funkcję, która będzie podnosić liczbę do kwadratu i funkcję do uzyskiwania sześcianu liczby. Następnie wykorzystaj je, tworząc funkcję, która wyświetli na ekranie sześcian kwadratu liczby.
Stwórz funkcję, która będzie sprawdzać typ zmiennej i jeśli zmienna jest łańcuchem znaków, to wyświetli ją z dużej litery. Stwórz także funkcję, która będzie witać użytkownika po imieniu. Zagnieźdź w niej pierwszą funkcję tak, aby imię było zawsze wyświetlane z dużej litery.