Regra da lista: [inicio:fim:passo].
Default: [0:size:1]
x[:-1]: Inicia no índice 0, termina no índice -1 (penúltimo elemento e intervalo aberto), passo de 1
x[:-1] = [1,2,3,4,5]
range(6) -> [0,1,2,3,4,5]
x após o append: [1,2,3,4,5,0,1,2,3,4,5]
-------------------------------------------------
y = x[-1]*x[1]**x[7]%x[9]
y = 5*2**2%4
Ordem de precedência dessa expressão: 1) exponencial. 2) mod ou multiplicação, o que vier primeiro
y=5*2**2%4
y=5*4%4
y=20%4
y=0
Apenas complementando,
x = [1,2,3,4,5,6] -> Define um array com seis itens (1,2,3,4,5,6)
x = x[:-1] -> Retorna a lista x SEM o último elemento; ou seja, x passa a ser [1,2,3,4,5]
for i in range(6): -> inicia-se um laço de repetição que vai de 0 a 5
x.append(i) -> Acrescenta os índices do laço à lista -> X passa a ser [1,2,3,4,5,0,1,2,3,4,5]
y = x[-1]*x[1]**x[7]%x[9] -> Equivale a x = 5*2**2%4 = 0
print(y)
Para resolver a expressão final X, segue-se as prioridades dos operadores, nesse caso:
- 1º Potenciação **
- 2º Multiplicação *
- 3º Resto %