Functions | Python
- Functions | Python
tipo String em C# é o tipo por referência, entretanto no Python é do tipo valor
Como declarar uma função?
def some_function():
x = 10
print(x)
some_function()
def some_function2(base: float) -> int:
x = 10 * base
return x
Como passar argumentos para a função?
Keyword Arguments
def greet(name, message):
print(f"{message}, {name}!")
greet(name="Alice", message="Welcome") # Output: Welcome, Alice!
greet(message="Hi", name="Bob") # Output: Hi, Bob!
Default Arguments
def greet(name="Guest"):
print(f"Hello, {name}!")
greet() # Output: Hello, Guest!
greet("Alice") # Output: Hello, Alice!
Arbitrary Positional Arguments (*names)
- Aceita qualquer argumento e qualquer quantidade, pois é passado como uma tupla
def grocery(*names):
print("Grocery List:", names)
grocery("Bread", "Eggs", "Milk") # Grocery List: ('Bread', 'Eggs', 'Milk')
Arbitrary Keyword Arguments (**info)
Quando você define uma função com **kwargs, você está dizendo:
"Aceite qualquer número de argumentos nomeados (chave=valor), mesmo que eu não saiba quais serão."
Esses argumentos serão empacotados dentro de um dicionário chamado kwargs.
def mostrar_info(**kwargs):
print(kwargs)
mostrar_info(nome="Maria", idade=28, cidade="São Paulo")
# {'nome': 'Maria', 'idade': 28, 'cidade': 'São Paulo'}
Function lambda
# arguments : expression
area = lambda base, height : 1 / 2 * base * height
print(area)
Nonlocal Keyword | Python
A palavra-chave nonlocal em Python é usada para declarar que uma variável em um escopo interno (como dentro de uma função aninhada) refere-se a uma variável em um escopo externo (mas não global). Isso permite modificar a variável de um escopo externo dentro de uma função aninhada.
Exemplo
def outer_function():
x = "local"
def inner_function():
nonlocal x
x = "nonlocal"
print("Inner:", x)
inner_function()
print("Outer:", x)
outer_function()
Global Keyword | Python
A palavra-chave global em Python é usada para declarar que uma variável dentro de uma função refere-se a uma variável global. Isso permite modificar a variável global dentro da função.
Exemplo
x = "global"
def my_function():
global x
x = "modified global"
print("Inside function:", x)
my_function()
print("Outside function:", x)