def convert_to_number(letter, columnA=0):
ab = '_ABCDEFGHIJKLMNOPQRSTUVWXYZ'
letter0 = letter.upper()
w = 0
for _ in letter0:
w *= 26
w += ab.find(_)
return w - 1 + columnA
def convert_to_letter(number, columnA=0):
ab = '_ABCDEFGHIJKLMNOPQRSTUVWXYZ'
n = number - columnA
x = n % 26
if n >= 26:
n = int(n / 26)
return convert_to_letter(n,1) + ab[x+1]
else:
return ab[x+1]
# 注意0转换后是列A
for i in range(0, 27):
print(f'{convert_to_number(convert_to_letter(i))}-{convert_to_letter(i)}', end=' ')
# 0-A 1-B 2-C 3-D 4-E 5-F 6-G 7-H 8-I 9-J 10-K 11-L 12-M 13-N 14-O 15-P 16-Q 17-R 18-S 19-T 20-U 21-V 22-W 23-X 24-Y 25-Z 26-AA