如何从Python3中给定的值列表中获取字符串中每个字符的值?

如何从Python3中给定的值列表中获取字符串中每个字符的值?,python,string,python-3.x,list,Python,String,Python 3.x,List,我试图通过给定的值列表来查找字符串中所有字符的值(字符串都是小写字母)。例如: number_list = [1, 3, 1, 3, 1, 4, 1, 3, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7] string = 'abc' number_list = [1, 3, 1, 3, 1, 4, 1, 3, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7] string =

我试图通过给定的值列表来查找字符串中所有字符的值(字符串都是小写字母)。例如:

number_list = [1, 3, 1, 3, 1, 4, 1, 3, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7]
string = 'abc'
number_list = [1, 3, 1, 3, 1, 4, 1, 3, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7]
string = 'zaba'
输出应如下所示:

[1,3,1]
数字列表正好包含26个数字。输出中的第一个数字是1,因为“a”是第一个字母,而数字列表中的第一个数字是1b'是第二个字母,所以数字列表中的第二个数字是3。类似地,它代表“c”

另一个例子:

number_list = [1, 3, 1, 3, 1, 4, 1, 3, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7]
string = 'abc'
number_list = [1, 3, 1, 3, 1, 4, 1, 3, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7]
string = 'zaba'
输出应为:

[7,1,3,1]
输出中的第一个数字是7,因为z是7中数字列表中的最后一个字母和最后一个数字。其他人也一样


如何使用Python3.x执行类似的操作

我假设字符串只包含小写字母

[number_list[ord(i)-97] for i in string]

这将起作用

您也可以使用
字符串
模块:

import string
number_list = [1, 3, 1, 3, 1, 4, 1, 3, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7]
a = dict(zip(string.ascii_lowercase, number_list))
s = 'abc' 
print([a[i] for i in s])
输出:

[1, 3, 1]
[编号列表[ord(i)-ord('a')]表示字符串中的i]