Python «OverflowError»

Я только начинаю учиться кодировать на Python. Я пытаюсь написать код для ответа на вопрос Project Euler:

Основными факторами 13195 являются 5, 7, 13 и 29.

Что является самым большим основным фактором числа 600851475143?

Моя программа работает с тестовым набором 13195, но когда я пытаюсь ввести 600851475143, я получаю сообщение об ошибке: & quot; OverflowError: range () result имеет слишком много элементов & quot; Кто-нибудь знает, как я могу это исправить?

Вот мой код:

class Euler3:
    "A class to find the largest prime factor of a given number"
     n = 600851475143
     primeFactors = []
     for i in range(2,n):
         if (n%i ==0):
            primeFactors.append(i)
            n = n/i
            i = i -1 #reset i
     print primeFactors

Любая помощь или предложения будут высоко оценены!

Ответы на вопрос(8)

Ваш ответ на вопрос