擅长:python、mysql、java
<p>首先,我们要编写一个函数,它给出一个字母的位置(您已经或多或少地这样做了)</p>
<pre><code>alpha='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
def position(letter):
return alpha.index(letter.upper())+1
</code></pre>
<p>然后您有两个案例:</p>
<ul>
<li>任一列输入都有一个字母,因此只需返回字母在字母表中的位置即可</li>
<li>输入有两个字母,在这种情况下,列号为位置(字母1)*26+位置(字母2)</li>
</ul>
<p>这为我们提供了以下程序:</p>
<pre><code>def column_number(label):
if len(label) == 1:
return position(label)
elif len(label) == 2:
return 26*position(label[0]) + position(label[1])
else:
print("incorrect label format")
</code></pre>