If one wants to do serious math using Python, the best bet is to use Sage ( http://www.sagemath.org ). Here are some examples:
sage: def f(x, bits=53): ....: R = RealField(bits); z = R(x) ....: return cos(R(pi) * factorial(z-1) / z) sage: f(100.00,bits=1000) 0.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999992343 sage: a = 50818429800343305993022114330311033271249313957919046352679206262204589342623811236647989889145173098650749 sage: time ecm.factor(a) CPU times: user 0.00 s, sys: 0.06 s, total: 0.06 s Wall time: 2.63 [3478697, 49998841, 11927295803, 518069464441, 1858900129817, 161610704597143, 157394131396743433859615518992811454816816449] sage: a = ZZ.random_element(10**100); a 1266081670515546883639925088390407903294616094325617831128683357589913968497538978358203322629420841 sage: a.is_prime() False sage: b = a.next_prime(); b 8975665868645752218769838623717890808871334875974244952657480072373614614471639002293590745490978883 sage: b.is_prime() True --Mike -- http://mail.python.org/mailman/listinfo/python-list