¿Hay alguna forma más pitónica de convertir columnas de estilo Excel en números (empezando por 1)?Convertir una carta de columna excel o de hoja de cálculo a su número en forma pitónica
Trabajando código de un máximo de dos letras:
def column_to_number(c):
"""Return number corresponding to excel-style column."""
number=-25
for l in c:
if not l in string.ascii_letters:
return False
number+=ord(l.upper())-64+25
return number
código se ejecuta:
>>> column_to_number('2')
False
>>> column_to_number('A')
1
>>> column_to_number('AB')
28
Tres cartas que no trabaja.
>>> column_to_number('ABA')
54
>>> column_to_number('AAB')
54
Referencia: question answered in C#
¿Y cómo regresas para el otro lado? –