sketch做網(wǎng)站人民網(wǎng)輿情數(shù)據(jù)中心官網(wǎng)
eval函數(shù)
eval()
將字符串轉(zhuǎn)變?yōu)橛行У谋磉_式來求值并返回對應(yīng)的結(jié)果
基礎(chǔ)數(shù)據(jù)計算
In [1]: eval("1 + 1")
Out[1]: 2
字符串重復(fù)
In [2]: eval (" '*' * 10")
Out[2]: '**********'
字符串轉(zhuǎn)為列表
In [3]: type(eval("[1,2,3,4,5]"))
Out[3]: list
字符產(chǎn)轉(zhuǎn)為字典
In [5]: type(eval("{'key':'value'}"))
Out[5]: dict
計算器案例
in_str = input("請輸入一道算術(shù)題:")
print(eval(in_str))
請輸入一道算術(shù)題:1+1
2
慎用eval
- 防止代碼注入
- 防止惡意攻擊如:刪除文件,獲取敏感信息