Criando um loop For sem uma variável iteradora
Em Python, loops for normalmente iteram sobre uma sequência de elementos usando uma variável iteradora, como como no exemplo abaixo:
for i in range(some_number): # do something
No entanto, pode haver cenários em que você simplesmente precise executar uma ação várias vezes sem a necessidade de uma variável iteradora.
Soluções possíveis
Embora não seja possível eliminar completamente a variável iteradora, existem alternativas que podem alcançar um resultado semelhante:
1. Função Lambda com xrange():
Você pode utilizar uma função lambda junto com a função xrange(), passando uma função anônima como argumento para loop() :
def loop(f, n): for i in xrange(n): f() loop(lambda:, 5)
2. Usar a variável _:
Python permite que você use a variável especial _ para descartar o valor atribuído pelo loop. Observe que _ é simplesmente outra variável e não é um espaço reservado para um iterador:
for _ in range(n): do_something()
Embora _ seja frequentemente usado como um identificador para espaços reservados, não é recomendado para uso neste contexto, pois pode potencialmente atribuir o último valor de retorno de uma sessão interativa do Python para _.
3. Ignorando explicitamente o iterador:
Você pode ignorar explicitamente a variável do iterador usando a seguinte sintaxe:
for i in range(n): pass # No action taken
No entanto, esta solução não é eficiente, pois ocupa um espaço extra no escopo.
Conclusão
Enquanto é Não é diretamente possível criar um loop for sem uma variável iteradora em Python, as alternativas acima fornecem métodos para obter um efeito semelhante quando necessário.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3