J'essaie d'apprendre Python, mais je suis encore assez jeune. J'essaye de créer une liste de nombres de 2 jusqu'au nombre que l'utilisateur entrera et parcourra la liste et enlèvera tous les nombres non premiers de cette liste, puis l'imprimera dehors. J'ai du mal à calculer car je continue d'avoir l'erreur: l'index de la liste est hors limites. J'envisageais d'utiliser une boucle for, mais la variable i serait plus basse que le courant variable et je dois m'assurer que i est toujours plus haut que le courant quand il traverse la liste. Je suis seulement autorisé à utiliser des fonctions de base et des boucles pour la tâche.Création d'une liste de Primes et impression de la liste en Python 3.6.1
counter = 2
current = 2
n = int(input("Please enter a number larger than 2. "))
while counter <= n:
userList.append(counter)
counter = counter + 1
print("Printing out list ")
print(userList)
i = 1
while i <= len(userList):
if userList[ i ] % current == 0:
userList.remove(userList[i])
i = i + 1
else:
current = current + 1
print(userList)
Je comprends. La tâche me permet seulement d'utiliser des boucles et des fonctions de base. L'utilisation de mots-clés tels que filter et lambda n'est pas autorisée. Je ne sais même pas ce qu'ils font. Fondamentalement, je suis seulement autorisé à utiliser ce que j'ai dans mon code, ce n'est tout simplement pas correct. –
Fondamentalement, vous venez de créer une nouvelle liste à partir de valeurs qui ne sont pas marqués comme étant supprimés. Vous pouvez facilement le réécrire comme un pour la boucle et si la déclaration. – gcx11