def eratosthene(n):
    """retourne la liste des nombres premiers <= n (crible d'eratosthene)"""
    n += 1
    L = [0,0] + [i for i in range(2, n)]
    for i in range(2, n):
        if L[i] != 0:
            # c'est un nombre 1er: on garde, mais on neutralise ses multiples
            for j in range(i*2, n, i):
                L[j] = 0
    return [p for p in L if p!=0]

print (eratosthene(100))