1

単語を評価して、その部分の合計が 23 になるかどうか (4 つの操作すべて) を確認するスクリプトを作成しようとしています。

考えられる方程式の文字列リストを作成することにしました。

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

私が今得ている問題は、それらが実際に 23/32 に等しいかどうかを確認するために、それらを整数形式でリストから戻すことができないことです。

4

2 に答える 2

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
于 2012-11-18T05:07:50.387 に答える
0

eval() 関数を確認してください

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

次に、リストをループして、結果で何かをしながらそれぞれで eval を呼び出すことができます。

于 2012-11-18T04:55:32.893 に答える