On Oct 31, 2007 3:24 PM, Abandoned <[EMAIL PROTECTED]> wrote: > On Oct 31, 10:18 pm, Paul McNett <[EMAIL PROTECTED]> wrote: > > Abandoned wrote: > > > Hi.. > > > I want to do this: > > > for examle: > > > 12332321 ==> 12.332.321 > > > > > How can i do? > > > > Assuming that the dots are always in the 3rd and 7th position in the string: > > > > def conv(s, sep="."): > > l = [s[0:3], s[3:6], s[6:]] > > return sep.join(l) > > > > print conv("12332321") > > > > -- > > pkm ~http://paulmcnett.com > > But it's starts from the end.. > print conv("12332321") > 123.323.21 > This is wrong it would be 12.332.321 >
If you're doing this for thousands separators, look at the locale module: >>> import locale >>> locale.setlocale(locale.LC_ALL, 'US') #the default C locale doesn't do grouping 'English_United States.1252' >>> locale.format_string('%d', 10000, grouping=True) '10,000' >>> locale.format_string('%d', 12332321, grouping=True) '12,332,321' >>> I only have the US locale available on this machine, but if you use a locale that uses "." as the thousands separator, this should work for you. -- http://mail.python.org/mailman/listinfo/python-list