eval函數

eval 函數

eval() 函數十分強大 —— 將字符串 當成 有效的表達式 來求值 並 返回計算結果python

# 基本的數學計算 In [1]: eval("1 + 1") Out[1]: 2 # 字符串重複 In [2]: eval("'*' * 10") Out[2]: '**********' # 將字符串轉換成列表 In [3]: type(eval("[1, 2, 3, 4, 5]")) Out[3]: list # 將字符串轉換成字典 In [4]: type(eval("{'name': 'xiaoming', 'age': 18}")) Out[4]: dict 

案例 - 計算器

需求函數

  1. 提示用戶輸入一個 加減乘除混合運算
  2. 返回計算結果
input_str = input("請輸入一個算術題:") print(eval(input_str)) 

不要濫用 eval

在開發時千萬不要使用 eval 直接轉換 input 的結果spa

__import__('os').system('ls') 
  • 等價代碼
import os os.system("終端命令") 
  • 執行成功,返回 0
  • 執行失敗,返回錯誤信息
相關文章
相關標籤/搜索