hello.py com print().input() e eval() para ler e converter valores.if, else (ex.: temperatura > 86).for sobre strings, listas e range().def, uso de return vs print(), docstrings.print() e return em funções, e como a mutabilidade afeta a passagem de argumentos.print() dentro de funções que deveriam devolver valores.Um programa Python é um conjunto de instruções armazenadas em arquivos .py. O exemplo hello.py demonstra atribuição de strings a variáveis e impressão com print(). O programa é executado linha a linha, e o shell pode ser reiniciado para garantir um ambiente limpo.
Qualquer arquivo .py é um módulo. Importar um módulo executa seu código (ex.: import math). Módulos podem conter funções, classes e variáveis.
print()Exibe valores no console. Aceita números, strings, listas etc. Cada chamada gera uma nova linha.
input()Solicita dados ao usuário, sempre retornando uma string. Para obter números, combina‑se com eval() ou converte‑se explicitamente (int(), float()).
Permitem decidir quais instruções executar e repetir blocos de código.
if)Executa o bloco indentado somente se a condição for True. Exemplo: temperatura > 86.
if … else)Executa um bloco quando a condição é True e outro quando é False. Exemplo: mensagens “Está quente!” vs “Não está quente!”.
Em Python, a indentação define blocos de código. A mesma indentação indica que a linha está fora do if, enquanto indentação maior a inclui no bloco.
forItera sobre sequências (strings, listas, range()). Cada iteração atribui o próximo elemento a uma variável de controle.
range()Gera sequências numéricas: range(stop), range(start, stop), range(start, stop, step).
Definidas com def nome(parâmetros):. O corpo é indentado. return devolve um valor; print() apenas exibe.
String literal logo após a definição da função, usada por help() para documentação.
Variáveis são nomes que referenciam objetos. Tipos imutáveis (int, str, tuple) não podem ser alterados; tipos mutáveis (list, dict) podem.
Alterar um objeto mutável afeta todas as variáveis que o referenciam; objetos imutáveis criam novos objetos ao “modificar”.
Python permite atribuição múltipla: a, b = b, a. Também permite atribuição encadeada: i = j = k = 0.
Argumentos são passados por referência ao objeto. Para objetos imutáveis, a função não pode alterar o original; para mutáveis, a função pode modificar o objeto compartilhado.
int (imutável)Função g(x): x = 5 não altera a variável original.
list (mutável)Função h(lst): lst[0] = 5 altera a lista original.
Modifica a lista in‑place, sem retornar valor.
print() e return dentro de uma função?
Resposta correta: C) print() exibe um valor no console e a função devolve None; return encerra a função e devolve o valor especificado.
Explicação: print() tem efeito colateral (saída), mas a função continua e retorna None. return finaliza a execução e entrega o valor ao chamador, permitindo seu uso em expressões.
def h(lst):
lst[0] = 5
my_list = [3, 6, 9]
h(my_list)
Qual será o conteúdo de my_list após a chamada da função?
Resposta correta: B) [5, 6, 9]
Explicação: lst referencia a mesma lista que my_list. Modificar lst[0] altera o primeiro elemento da lista original.
range()?
Resposta correta: A) for i in range(0,9,2): print(i)
Explicação: range(0,9,2) gera 0,2,4,6,8 – exatamente os pares desejados.
def trocaPU(lst):
lst[0], lst[-1] = lst[-1], lst[0]
time = ['Ava', 'Eleanor', 'Clare', 'Sarah']
trocaPU(time)
Qual será o conteúdo final da lista time?
Resposta correta: A) ['Sarah', 'Eleanor', 'Clare', 'Ava']
Explicação: A atribuição múltipla troca simultaneamente o primeiro e o último elemento da lista.