Concatenação e Repetição¶
Nota sobre eficiência computacional
Por ser um curso introdutório, utilizaremos nesse curso apenas as operações de concatenação e fatiamento de listas. Nosso objetivo é empoderar os alunos para que eles possam entender, aprender e usar essas estruturas rapidamente em seus programas, independente da eficácia computacional dessas soluções, permitindo que o aluno mantenha foco no problema e não na linguagem. O custo computacional dessas soluções será abordado em cursos mais avançados.
Duas listas podem ser concatenadas utilizando o operador +
.
xxxxxxxxxx
um = [10, 11, 12]
dois = [20, 21]
tres = um + dois
print(tres)
Activity: 1 ActiveCode (concatenacao_1)
Nesse exemplo, a concatenação da lista um
com a lista dois
cria uma nova lista formada por cópias dos elementos da lista um
e
dois
.
Uma lista vazia é o elemento neutro da concatenação de listas:
xxxxxxxxxx
um = [10, 11, 12]
dois = [20, 21]
tres = um + [] + dois + []
print(tres)
Activity: 2 ActiveCode (concatenacao_1b)
O exemplo abaixo, concatena a lista um
três vezes:
xxxxxxxxxx
um = [10, 11, 12]
tres = um + um + um
print(tres)
Activity: 3 ActiveCode (concatenacao_2)
Para concatenar uma lista repetidas vezes, podemos utilizar o operador
*
para multiplicar
uma lista por um inteiro:
xxxxxxxxxx
um = [10, 11, 12]
print("um + um + um", um + um + um)
print("3 * um", 3 * um)
print("um * 3", um * 3)
print("[] * 3", [] * 3)
Activity: 4 ActiveCode (repeticao_1)
Observe que, assim como o *
em operações aritméticas, o operador
de repetição *
de listas também é comutativo, assim como a
repetição de listas vazias resulta em uma lista vazia.
O operador de repetição *
é bastante útil para criar uma lista de
comprimento N
com valor inicial determinado como:
xxxxxxxxxx
# cria lista de tamanho n com zeros
n = int(input("Digite o tamanho da lista: "))
lista = [0] * n
print(lista)
Activity: 5 ActiveCode (repeticao_2)