文章目录
正整数到Excel编号之间的转换
- excel的列编号是这样的:a b c ... z aa ab ac... az ba bb bc...yz za zb zc ...zz aaa aab aac...; 分别代表以下的编号1 2 3 ... 26 27 28 29... 52 53 54 55... 676 677 678 679 ... 702 703 704 705;
- 编写一个函数,完成从一个正整数到这种字符串之间的转换;
输入描述:
输入一个正整数
输出描述:
excel的编号字符串
示例1
输入:
1
输出:
a
示例2
输入:
26
输出:
z
示例3
输入:
27
输出:
aa
python实现:
- 类似于二进制的转换,这里当做是26进制;
- m每次减1,再对26求模;
python
m = int(input().strip())
if m > 0:
result = ""
while m > 0:
m -= 1
result += chr((m % 26) + ord('a'))
m //= 26
print(result[::-1])