我读过关于将字母表转换为数字的这个帖子,但我不明白如何将数字转换回字母.如果有人可以扩展,特别是更具体地说,chr()线程中描述的功能,我将不胜感激.我已经尝试过搜索这个chr功能但是没有很多教程.
我想根据值将列表映射到数字.
例如:
['aa', 'b', 'b', 'c', 'aa', 'b', 'a'] -> [0, 1, 1, 2, 0, 1, 3]
Run Code Online (Sandbox Code Playgroud)
我试图通过使用numpy和映射字典来实现这一点.
def number(lst):
x = np.array(lst)
unique_names = list(np.unique(x))
mapping = dict(zip(unique_names, range(len(unique_names)))) # Translating dict
map_func = np.vectorize(lambda name: d[name])
return map_func(x)
Run Code Online (Sandbox Code Playgroud)
是否有更优雅/更快的方式来做到这一点?
更新:奖金问题 - 按照维护的顺序执行此操作.
我需要找到字母范围内的字母数字,即a = 1,b = 2,c = 3 ......所以如果我得到一个那么返回的值应该是1
python(内置)中是否提供了一个更短的方法来查找它,而不是声明一个包含26个字母的字典及其所谓的值.
如果您知道这样的功能,请帮助.....