for i in xrange(1, 600851475141): if 600851475141 % i == 0: print i
Да и вопрос интересует - почему, после некоторого момента, он наглухо виснет?
Тогда как отдельное взятие деления по модулю даже больших чисел занимает миллисекунды,
а перебор в цикле через итератор тоже вроде не ахти какая по сложности задача.