Programming Riddle: How might you translate an Excel column name to a number?

前端 未结 28 1370
[愿得一人]
[愿得一人] 2020-11-29 22:26

I was recently asked in a job interview to resolve a programming puzzle that I thought it would be interesting to share. It\'s about translating Excel column letters to actu

28条回答
  •  栀梦
    栀梦 (楼主)
    2020-11-29 22:42

    def ExcelColumnToNumber(ColumnName):
        ColNum = 0
        for i in range(0, len(ColumnName)):
            # Easier once formula determined: 'PositionValue * Base^Position'
            # i.e. AA=(1*26^1)+(1*26^0)   or  792=(7*10^2)+(9*10^1)+(2*10^0)
            ColNum += (int(ColumnName[i],36) -9) * (pow(26, len(ColumnName)-i-1))
        return ColNum
    

    p.s. My first Python script!

提交回复
热议问题