To pretty up some numbers stored as strings, I used locale to format them with commas. I then found the following error:
>>> import locale >>>locale.setlocale(locale.LC_ALL, 'English_United States.1252') 'English_United States.1252' >>> locale.format('%d', float('2244012500.0000'), grouping = True) Traceback (most recent call last): File "<pyshell#28>", line 1, in <module> locale.format('%d', float('2244012500.0000'), grouping = True) File "C:\Python25\lib\locale.py", line 145, in format formatted = percent % value TypeError: int argument required However, if the number is <= 2**31-1, it works just fine: >>>locale.format('%d', float('224401250.0000'), grouping = True) '224,401,250' Interestingly, if I first convert the floats to ints, , the function works just fine, even if the numbers exceed 2**31-1: >>> locale.format('%d', int(float('2244012500.0000')), grouping = True) '2,244,012,500' Is there an int/long related bug lurking in locale? Sincerely Thomas Philips -- http://mail.python.org/mailman/listinfo/python-list