As discussed on python-dev, remove several operator functions
isSequenceType(), isMappingType(), and isNumberType() in favor
of using abstract base classes. Also, remove repeat() and irepeat()
in favor of mul() and imul().
After the buildbots have had a go at this. Will backport to Py3.0.1.
For Py2.7, will just mark as deprecated.
diff --git a/Lib/locale.py b/Lib/locale.py
index 0bed19e..4116ef1 100644
--- a/Lib/locale.py
+++ b/Lib/locale.py
@@ -187,7 +187,7 @@
formatted = _group(formatted, monetary=monetary)[0]
return formatted
-import re, operator
+import re, collections
_percent_re = re.compile(r'%(?:\((?P<key>.*?)\))?'
r'(?P<modifiers>[-#0-9 +*.hlL]*?)[eEfFgGdiouxXcrs%]')
@@ -207,7 +207,7 @@
del new_val[i+1:i+1+starcount]
i += (1 + starcount)
val = tuple(new_val)
- elif operator.isMappingType(val):
+ elif isinstance(val, collections.Mapping):
for perc in percents:
key = perc.group("key")
val[key] = format(perc.group(), val[key], grouping)