如何在Python中评估字符串列表

时间:2012-11-18 04:48:49

标签: python string list int

我正在尝试创建一个评估单词的脚本,以查看其部分是否以任何方式加起来(所有四个操作)。

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

answerList = [12+15+12,12+15-12,12+15/12,...]

我现在遇到的问题是,我无法以整数格式将它们从列表中取回,以查看它们是否实际上等于23/32。

2 个答案:

答案 0 :(得分:0)

查看eval()函数

>>> eval("12+15+12")
39
>>> eval("12+15/12")
13

然后,您可以循环遍历列表,在对结果执行某些操作时调用eval。

答案 1 :(得分:0)

如果您像存储示例一样存储数据,它会自动将它们转换为整数 例如:

>>> answerList = [12+15+12,12+15-12,12+15/12, ...]
>>> answerList
[39, 15, 13, ...]

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

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