On 19 May 2005 11:59:00 -0700, rh0dium <[EMAIL PROTECTED]> wrote: > This is great but backwards... > > Ok because you all want to know why.. I need to convert Excel columns > A2 into , [1,0] and I need a simple way to do that.. > > ( The way this works is A->0 and 2->1 -- Yes they interchange -- So > B14 == [13,1] )
why didn't you say this in the first place? def coord2tuple(coord): row, col = '', '' alpha = 'abcdefghijklmnopqrstuvwxyz'.upper() pairs = [''.join((x,y)) for x in alpha for y in [''] + [z for z in alpha]] pairs = sorted(pairs, key=len) coord = coord.upper() for c in coord: if c in alpha: row += c else: col += c return (int(col)-1, pairs.index(row)) >>> coord2tuple('B14') (13, 1) >>> coord2tuple('ZZ14') (13, 701) >>> coord2tuple('ZZ175') (174, 701) >>> coord2tuple('A2') (1, 0) Are there cols greater than ZZ? I seem to remember that there are not, but I could be wrong. Hope this helps. Peace Bill Mill [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list