def primos_maiores_que_n(n, lim):
    return primos_menores_que_n(lim, start=n)

def maior_primo(n):
    for num in reversed(range(1,n+1)):
        if all(num%i!=0 for i in range(2,num)):
            return num

def e_primo(num):
   return all(num%i!=0 for i in range(2,num))

def primos_menores_que_n(n, start=1):
    for num in range(start,n):
        if all(num%i!=0 for i in range(2,num)):
            yield num

print(list(primos_menores_que_n(10))) # [1, 2, 3, 5, 7]
print(list(primos_maiores_que_n(10, 100))) # [11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
print(maior_primo(100)) # 97
print(e_primo(10)) # False
print(e_primo(11)) # True