Source code for paws.core.operations.TESTS.ListPrimes
from collections import OrderedDict
from .. import Operation as opmod
from ..Operation import Operation
inputs = OrderedDict(n_primes=10)
outputs = OrderedDict(primes_list=None)
[docs]class ListPrimes(Operation):
"""Makes a list of prime numbers in increasing order"""
def __init__(self):
super(ListPrimes,self).__init__(inputs,outputs)
self.input_doc['n_primes'] = 'number of primes to output'
self.output_doc['primes_list'] = 'list of prime numbers'
[docs] def run(self):
np = self.inputs['n_primes']
pl = []
npfound = 0
x = 2
while npfound < np:
divs = [p for p in pl if x%p == 0]
if not divs:
npfound += 1
pl.append(x)
x += 1
self.outputs['primes_list'] = pl