Наибольшее простое число в диапазоне

Напишите функцию, которая будет принимать начальное и конечное значения диапазона чисел и возвращать наибольшее простое число в этом диапазоне.

Примечания:

  • В функцию будут передаваться только положительные целые числа.
  • Простое число — такое целое положительное число, которое делится только на себя и на единицу.

Примеры

fat_prime(2, 10) ➞ 7
# диапазон [2, 3, 4, 5, 6, 7, 8, 9, 10], наибольшее простое число - 7.

fat_prime(10, 2) ➞ 7
# [10, 9, 8, 7, 6, 5, 4, 3, 2], наибольшее простое число - 7.

fat_prime(4, 24) ➞ 23
# [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24] наибольшее простое число - 23.

Вариант решения

def fat_prime(a, b):
    s, e = min(a,b), max(a,b)
    return max(i for i in range(s,e+1) if all(i%j for j in range(2,int(i**0.5)+1))