-
0 , 1 , 3 , 4 , 5 , 6
L=[ 6 , 5 , 4 , 3 , 2 , 1 ]
-6 , -5 , -4 , -3 , -2 , -1
"range(-3, 3)" -> Vai de -3 (incluso) a 3 (não incluso, ou seja, 2), com o passo normal
primeiro -> ordem [-3, -2, -1] : "L[k]" -> 3 , 2 , 1
e depois começa do início
segundo -> ordem [0, 1 , 2]: "L[k]" -> 6, 5 , 4
-
FGV gosta dessa função
-
Existem três maneiras de chamar range() :
range(stop) recebe um argumento.
range(start, stop) recebe dois argumentos.
range(start, stop, step) recebe três argumentos.
-
Essa questão deveria ter sido anulada. print L[k] vai apresentar um erro, pois, em python, a saída de dados carece de parênteses depois do comando "print", pois esta é uma função. Logo, o correto, seria:
print (L[k])
Bem, mas fora esse vacilo, o range() usar 3 argumentos: range(stop), range(start, stop) e range(start, stop, step).
Quando eu faço range(-3,3), eu tô dizendo que o loop vai iniciar em -3, percorre-lo até o seu início, ou seja, -3,-2,-1 (printando os valores 3,2,1 de "L", e vai parar antes de do "3", começando do 0, ou seja, 0, 1, 2 (printando os valores desses indices, q são 6,5,4)
Fonte:
[1] https://docs.python.org/pt-br/3/library/functions.html#print
-
Só uma observação. A função Python range() foi introduzida na linguagem a partir da versão 3.x. Com a questão cita a versão 2.7, então tanto a função RANGE e XRANGE funcionariam.