如何在Python中计算字符串列表

如何在Python中计算字符串列表,python,string,list,int,Python,String,List,Int,我试图制作一个脚本,对一个单词进行求值,看看它的各个部分加起来是否有23个(全部四个操作) 我把它归结为创建一个可能方程的字符串列表: answerList = [12+15+12,12+15-12,12+15/12,...] 我现在遇到的问题是,我无法以整数格式将它们从列表中取回,以查看它们是否实际等于23/32。检查eval()函数 然后,您可以在列表中循环,对每个列表调用eval,同时处理结果。如果您像示例那样存储数据,它将自动将它们转换为整数 e、 g: 但是,如果要存储并打印出哪个方

我试图制作一个脚本,对一个单词进行求值,看看它的各个部分加起来是否有23个(全部四个操作)

我把它归结为创建一个可能方程的字符串列表:

answerList = [12+15+12,12+15-12,12+15/12,...]
我现在遇到的问题是,我无法以整数格式将它们从列表中取回,以查看它们是否实际等于23/32。

检查eval()函数


然后,您可以在列表中循环,对每个列表调用eval,同时处理结果。

如果您像示例那样存储数据,它将自动将它们转换为整数 e、 g:

但是,如果要存储并打印出哪个方程的结果为23,则需要将它们存储为字符串,然后使用eval将它们转换为int,以检查它是否等于23,然后打印出方程

answerList = ['12+15+12','12+15-12','12+15/12']
for equation in answerList :
  if eval(equation) == 23 :
    print equation

您正在尝试索引到列表中吗<代码>应答列表[索引]将完成此操作。如果不知道一个词是什么以及如何评价它,我就说不出更多的话了。我输入一个单词,它把它分解成几个部分,然后对它们进行评估。例如,我输入'lol',它会把它放入一个['l','o','l']的列表中,然后它会把字母表和数字列表中的数字对应起来,然后把它放入一个不同的列表中,给我['12','15','12']。我将获取该列表,使用嵌套的for列表添加操作,并获得第三个列表,其中填充了操作的迭代(如++、+-、+/、+*、-、…)。我只是没办法把他们从名单上除掉。Eval()起作用了。你知道,我以为它也会起作用,但实际上它并不是自动转换它们。我以前也见过这种行为,所以我很确定我这样做不会遇到任何问题。显然,我肯定做了一些奇怪的事情,但至少我最终完成了工作。哈哈
>>> answerList = [12+15+12,12+15-12,12+15/12, ...]
>>> answerList
[39, 15, 13, ...]
answerList = ['12+15+12','12+15-12','12+15/12']
for equation in answerList :
  if eval(equation) == 23 :
    print equation