Executando verificação de segurança...
2

em menos de dois anos e meio que não programava nada

Mas vc mexia muito com Python? Porque as características que vc relatou não são tão recentes assim...


for i in i range(a,quantidade)

Isso nunca foi uma sintaxe válida em Python, a menos que seja um erro de digitação e vc quis dizer outra coisa (esse segundo i está sobrando).


Sobre for _ in range(quantidade), esta sintaxe é válida há muito tempo.

Por mais estranho que pareça, _ é um identificador válido na linguagem, desde as primeiras versões. Isso quer dizer que podemos ter variáveis, classes e funções com este nome:

# variável chamada "_"
_ = 10
print(_ + 5) # 15

# função chamada "_"
def _():
    print('oi')

_() # oi

# classe chamada "_"
class _:
    def __init__(self, value):
        self.value = value

print(_(42).value) # 42

Mas existe uma convenção (ou seja, algo que é recomendado, embora não seja obrigatório) de usar _ quando vc quer indicar que aquela variável não é importante naquele contexto. Por exemplo, se eu só quero rodar algo 10 vezes, faço for _ in range(10). Precisa ter um identificador depois do for por exigência da sintaxe, mas se este não é usado dentro do loop, usa-se _ para indicar isso.

Novamente, não é obrigatório, apenas uma convenção para facilitar a leitura do código (só de bater o olho vc já sabe que a variável não será usada, e não perde tempo nem gasta esforço cognitivo pra ficar procurando ela no bloco do loop).


Já sobre range(a, quantidade) versus range(quantidade), bem, isso também já é válido há muito tempo. O range foi criado no Python 3 (em 2008), e sempre foi possível passar de um a três argumentos. Se vc passa apenas um, ele assume que o valor inicial é zero. E o terceiro parâmetro indica o passo (se não for informado, por default é 1). Lembrando que o valor final não é incluso, ou seja, temos estas três possibilidades ao criar um range:

  • range(10) - intervalo de 0 a 9 (ou seja, os números 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9)
  • range(4, 10) - intervalo de 4 a 9 (ou seja, os números 4, 5, 6, 7, 8 e 9)
  • range(1, 10, 3) - intervalo de 1 a 9, pulando de 3 em 3 (ou seja, apenas os números 1, 4 e 7)

De qualquer forma, já passei por situações assim, principalmente se vc fica muito tempo sem mexer com determinada linguagem. Outro caso é que já fiquei muito tempo em um projeto com uma versão antiga e quando fui ver as mais novas, tomei um susto.

É normal, principalmente para as linguagens mainstream, que estão sempre se atualizando e adicionando novidades.

Carregando publicação patrocinada...
1