Bom dia Matheus,
A função range aceita diferentes entradas de parâmetros.
Da forma que você usou, range(3) tem somente o parâmetro de parada 3, que é exclusivo, ou seja, os índices assumirão 0,1 e 2.
Porém, você consegue também passar na função range o parâmetro de início e o parâmetro de parada, além do parâmetro de passo (acréscimo por vez) que por padrão é 1.
Ou seja, range(início, parada, passo):
- range(1,4) assumiria os índices 1,2 e 3
- range(10,16) assumiria os índices 10, 11, 12, 13, 14 e 15.
- range(1,12,2) assumiria os índices 1, 3, 5, 7, 9, 11
O passo pode ainda ser negativo, assumindo sequencias decrescentes.
- range(5,0,-1) assumiria os índices 5, 4, 3, 2 e 1.
Espero que tenha tirado a sua dúvida.
Estou à disposição. Bons estudos!