【Python】文字列を数式に変換(eval)

IT
  • eval関数について調べたことをmemo
  • 強力な関数である反面、セキュリティリスクがある(ユーザー入力を直接evalに渡すなど)ため、実装時には十分注意すること
    • 使わないで済むのであれば、使用しない方が良いかもしれません

サンプルコードと実行結果(文字列→数式)

コード

expression = "2 + 3 * 5"
result = eval(expression)
print(result)  # 17

結果

17

サンプルコードと実行結果(文字列(変数)→数式)

コード

x = 10
y = 5
expression = "x * y"
result = eval(expression)
print(result)  # 50

結果

50

コメント

タイトルとURLをコピーしました