# HG changeset patch # User cmlenz # Date 1182184434 0 # Node ID 0733e852a9e9042816aa8f81bd9a6d405ee587ac # Parent b75ae5def3b19ce9ec183ccd629bc8884c31e7ed Add test for permille number format. diff --git a/babel/numbers.py b/babel/numbers.py --- a/babel/numbers.py +++ b/babel/numbers.py @@ -153,6 +153,11 @@ >>> format_percent(25.1234, locale='sv_SE') u'2\\xa0512 %' + The format pattern can also be specified explicitly: + + >>> format_percent(25.1234, u'#,##0\u2030', locale='en_US') + u'25,123\u2030' + :param number: the percent number to format :param format: :param locale: the `Locale` object or locale identifier @@ -166,10 +171,10 @@ return pattern.apply(number, locale) def format_scientific(number, locale=LC_NUMERIC): + # TODO: implement raise NotImplementedError - class NumberFormatError(ValueError): """Exception raised when a string cannot be parsed into a number.""" @@ -339,10 +344,10 @@ else: b = '' a = a.lstrip('-') - retval = '%s%s%s%s' % (self.prefix[negative], - self._format_int(a, locale), - self._format_frac(b, locale), - self.suffix[negative]) + retval = u'%s%s%s%s' % (self.prefix[negative], + self._format_int(a, locale), + self._format_frac(b, locale), + self.suffix[negative]) if u'¤' in retval: retval = retval.replace(u'¤¤', currency.upper()) retval = retval.replace(u'¤', get_currency_symbol(currency, locale))