ALL Python Programmers Should Know This!!

Amir Ali Hashemi
2 min readJul 17, 2023

This is a powerful tip that all Python programmers should know.

So here I have a list of numbers from one to one thousand:

nums = range(1,1000)
print(list(nums))

But what I want to do is to get all the prime numbers in that list.

So what I will do first, is create a function called is_prime which takes in a single number and returns false if the number is not prime and returns true if it is:

nums = range(1,1000)
print(list(nums))

def is_prime(num):
for x in range(2, num):
if (num % x) == 0:
return False
return True

And now all I have to do is use Python’s built-in filter() function.

I’ll add is_prime and the nums as inputs:

nums = range(1,1000)
print(list(nums))

def is_prime(num):
for x in range(2, num):
if (num % x) == 0:
return False
return True

primes=filter(is_prime, nums)

Essentially what this does is applies the is_primes function to every item in the nums list.

If a boolean True is returned, it stores it in our primes variable otherwise, it removes the number.

All we have to do now is print our primes variable however you will see it prints out a filter object.

This is Python’s way of conserving memory and so we need to convert it into a list by putting primes inside of a list function and now we can run:

nums = range(1,1000)
print(list(nums))

def is_prime(num):
for x in range(2, num):
if (num % x) == 0:
return False
return True

primes=filter(is_prime, nums)
print(list(primes))

--

--

Amir Ali Hashemi

I'm an AI student who attempts to find simple explanations for questions and share them with others