Python code for calculating number of an alphabet
我需要找出一个字母表在字母范围内的数字,即A=1,B=2,C=3….所以如果我得到了,那么返回值应该是1
是否在python(inbuilt)中提供了一个较短的方法来查找它,而不是声明一个包含26个字母的字典,其中包含它们所尊重的值?
如果您知道这样一个函数,请帮助…..
使用序号()
1 2 3 | >>> c = 'f' >>> ord(c) - ord('a') + 1 6 |
如果希望"f"和"f"都返回6,请使用lower()。
1 2 3 | >>> c = 'F' >>> ord(lower(c)) - ord('a') + 1 6 |
您可能还对chr()感兴趣
1 2 3 | >>> c = 'f' >>> chr(ord(c) + 1) 'g' |
公正:
1 | ord(c)%32 |
它可以处理上下两种情况。
如果只需要a到z,则可以使用ORD:
1 | ord(c) - ord('A') + 1 |
DR
1 2 | def lettertoNumber(letter): return ord(letter.upper()) - 64 |
冗长的解释
但在Unicode中,我们得到了
然而,如果我们从所有这些字母中减去64,我们得到
由于是小写字母,我们需要使用
函数ORD("a")将返回当前文本编码中"a"的数值。您可以这样做,然后做一些简单的数学运算,将其转换为1、2、3类型的映射。
1 2 3 | >>> alphadict = dict((x, i + 1) for i, x in enumerate(string.ascii_lowercase)) >>> alphadict['a'] 1 |