Python - Listas, laços e funções

Listas, laços e funções formam a base dos programas usados em cálculo numérico. Com eles, podemos armazenar pontos, calcular valores de uma função em vários lugares e organizar algoritmos em partes reutilizáveis.

Listas

Uma lista guarda vários valores em uma única variável:

x = [1, 1.5, 2, 2.5, 3]
print(x)

Os índices começam em zero:

x = [10, 20, 30]

print(x[0])
print(x[1])
print(x[2])

Adicionando valores

O comando append adiciona um novo item ao final da lista:

valores = []
valores.append(2)
valores.append(4)
valores.append(6)

print(valores)

Percorrendo listas

x = [1, 2, 3, 4]

for valor in x:
    print(valor)

Quando precisamos do índice e do valor, usamos enumerate:

for i, valor in enumerate(x):
    print(i, valor)

Compreensão de lista

Uma compreensão de lista cria uma nova lista a partir de uma regra:

x = [1, 2, 3, 4]
y = [2*xi + 1 for xi in x]

print(y)

Essa estrutura será útil para gerar pontos, valores de funções e pesos de fórmulas numéricas.

Funções

Funções evitam repetição de código. A função abaixo calcula \(f(x)=x^2-4\):

def f(x):
    return x**2 - 4

print(f(1))
print(f(3))

Função aplicada em uma lista

x = [1, 2, 3, 4]
y = [f(xi) for xi in x]

print(y)

Somatórios

O comando sum soma os elementos de uma sequência:

valores = [1, 2, 3, 4]
soma = sum(valores)

print(soma)

Também podemos somar expressões calculadas em um laço:

x = [1, 2, 3, 4]
soma_quadrados = sum(xi**2 for xi in x)

print(soma_quadrados)

Atividade

Crie uma lista com os valores de 1 a 5 e gere outra lista com o quadrado de cada valor.