[Sequanux-ml] question sur les listes en python

Jonas ezjonas at gmail.com
Lun 28 Sep 12:31:44 CEST 2009


Voici un petit bout de python que j'ai trouvé sur wikibook
http://fr.wikibooks.org/wiki/Exemples_de_scripts_Python

# calcul des nombres premiers inferieurs a N
#initialisation
N     = 200
liste  = range(2, N)                           # liste de 2 à N
nombre = 2
while (nombre*nombre <= N):                    # tant que le nb premier < a la
                                              # racine carree de N
  for i in liste[ liste.index(nombre) + 1: ]: #parcourt la liste avec ce nombre
      if i % nombre == 0:                     #un multiple du nombre est trouve
          del( liste[ liste.index(i) ] )      # on le raye de la liste
  nombre = liste[liste.index(nombre) + 1]     # on prend le nombre
suivant non raye

print liste                                    #affichage du resultat

Ce que je ne comprend pas c'est cette ligne
for i in liste[ liste.index(nombre) + 1: ]: #parcourt la liste avec ce nombre
Plus particulèrement, je ne comprend pas ce qu'il se passe "dans le
décor" avec ce ':', je sais qu'il y a un slice, mais à part ça ?


Plus d'informations sur la liste de diffusion Sequanux-ml