X-Git-Url: https://scm.cri.ensmp.fr/git/linpy.git/blobdiff_plain/26837dbbeb8e37f8ee393115e879e6d94a1a79e5..ce31a1de5082c55b5eed1825ae95d827c55a8b92:/pypol/linexprs.py diff --git a/pypol/linexprs.py b/pypol/linexprs.py index a9f188b..5ec5efd 100644 --- a/pypol/linexprs.py +++ b/pypol/linexprs.py @@ -3,7 +3,7 @@ import functools import numbers import re -from collections import OrderedDict, defaultdict +from collections import OrderedDict, defaultdict, Mapping from fractions import Fraction, gcd @@ -45,7 +45,7 @@ class Expression: return Expression.fromstring(coefficients) if coefficients is None: return Rational(constant) - if isinstance(coefficients, dict): + if isinstance(coefficients, Mapping): coefficients = coefficients.items() for symbol, coefficient in coefficients: if not isinstance(symbol, Symbol): @@ -218,7 +218,7 @@ class Expression: def subs(self, symbol, expression=None): if expression is None: - if isinstance(symbol, dict): + if isinstance(symbol, Mapping): symbol = symbol.items() substitutions = symbol else: