Чистый модуль рациональных чисел Python для 2,5

replace (Inputs, 'AA', 'A') будет работать, если вам нужно беспокоиться только о парах A.

6
задан Constantin 30 November 2008 в 21:44
поделиться

3 ответа

Модуль частей от 2,6 может быть сорван при необходимости. Захватите fractions.py, numbers.py, и abc.py; все чистые модули Python.

Можно получить единственные файлы отсюда (2,6 ответвления, 2.7 не работает): http://hg.python.org/cpython/branches

9
ответ дан 8 December 2019 в 12:23
поделиться

SymPy является символьной библиотекой математики, записанной полностью в Python, и имеет полную поддержку рациональных чисел. Из учебного руководства:

>>> from sympy import *
>>> a = Rational(1,2)

>>> a
1/2

>>> a*2
1

>>> Rational(2)**50/Rational(10)**50
1/88817841970012523233890533447265625

Существует также GMP для Python (GMPY), который, в то время как не чистый Python, вероятно, более эффективен.

8
ответ дан 8 December 2019 в 12:23
поделиться

Еще одной вещью попробовать является Rat.py от демонстрационной папки в ответвлении обслуживания Python 2.5. Если я понимаю правильно, это - папа 2,6 fractions. Это - единственный модуль без зависимостей.

>>> from Rat import rat
>>> rat(1) / rat(3)
Rat(1,3)
>>> rat(1, 3) ** 2
Rat(1,9)

ОБНОВЛЕНИЕ: Nah, fractions.py приблизительно в 2.5 раза быстрее для моей задачи.

2
ответ дан 8 December 2019 в 12:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: