I get a time limit exceeded with my python code even with the segmented sieve of Eratosthenes. Any help to not to get that again?
from sys import stdin as fp
from math import sqrt,ceil
#fp=open("PRIME1.txt")
buffer=fp.readlines()
#print(buffer)
clean_buffer=[]
for i in buffer:
clean_buffer.append(i.strip())
clean_buffer.pop(0)
#print(clean_buffer)
for i in range(0,len(clean_buffer)):
start=int(clean_buffer[i].split()[0])
stop=int(clean_buffer[i].split()[1])
#Creating segmented sieve
sieve=[i for i in range(2,ceil(sqrt(stop)+1))]
for num in range(0,len(sieve)):
num2=num+1
while num2<len(sieve):
if sieve[num2]%sieve[num]==0:
sieve.pop(num2)
num2+=1
else:
num2+=1
#print(sieve)
#printing primes from start to stop using primes in sieve
for i in range(start,stop+1):
if all([i%p!=0 or i==p for p in sieve]):
print(i)
print()