persianprez 0 Junior Poster in Training

I was able to finish some:

def sieve( n, primes):

    numbers =[]

    # make a list of integers from 0 to n, inclusive

    for i in range(2, n+1):
    
        numbers.append( i )


    # by definition, the first prime is 2

    del(numbers[ _____________ ])

    del(numbers[ _____________ ])


    # while there are still numbers in the list

    while len(numbers) > -1:
        # the first number is always a prime
        prime = numbers[0]

        primes.append( numbers )
        del(numbers[0])

        # make a list of indices where there are
        # multiples of the current prime number
        indices = []        
        for i in range(len(indices)):

            if numbers[i] %2 == 0:

                indices.append( i )

        # reverse the indices for easy deletes

        indices.reverse()
        
        # delete these multiples since they're not primes

        for index in _____________:

            del(numbers[ ________________ ])