python內建函式-eval()函式與exec()函式的區別
一、eval()函式
- 可以用來執行一個字串表示式,並返回表示式的值
- 字串裡不能定義變數
>>> eval("2*3")
6
>>> eval("max('abc')")
'c'
>>> eval('print("hello")')
hello
>>>
>>> a = eval('2*4')
>>> a
8
>>> a*2
16
>>> eval("a=1")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1
a=1
^
二、exec()函式
- 可以用來執行一個字串表示式,但取不到返回值
- 字串裡,可以定義變數
>>> exec("a=100")
>>> a
100
>>> exec("print('hello')")
hello
>>> s = exec("2*3")
>>> print(s)
None
>>>
三、eval()與exec()的區別
1.相同點:都可以用來執行一個字串表示式
2.區別:
(1)eval()函式可以取到表示式的返回值,exec()函式取不到表示式的返回值。
(2)eval()函式,在字串裡不能定義變數,exec()函式在字串裡可以定義變數。
相關文章
- 建構函式與普通函式的區別函式
- 正規表示式match()函式和exec()函式的區別函式
- python函式每日一講 - eval函式Python函式
- webgl內建函式--幾何函式與矩陣函式Web函式矩陣
- webgl內建函式--向量函式與紋理查詢函式Web函式
- exec()函式函式
- JavaScript建構函式和普通函式的區別JavaScript函式
- webgl內建函式--指數函式Web函式
- webgl內建函式--通用函式Web函式
- 箭頭函式與普通函式的區別函式
- append()函式與html()函式的區別APP函式HTML
- 函式過載與函式模板的區別函式
- Python-eval()函式Python函式
- 箭頭函式與普通函式區別函式
- Python內建函式Python函式
- python 內建函式Python函式
- python函式每日一講 - exec執行函式Python函式
- closest()函式parent()函式的區別函式
- fill函式與memset函式的區別(c++)函式C++
- 函式宣告和函式表示式的區別函式
- 箭頭函式、簡寫函式、普通函式的區別函式
- exec函式族函式
- exec函式簇函式
- 內建函式函式
- Hive函式(內建函式+自定義標準函式UDF)Hive函式
- TypeScript 中函式的理解?與 JavaScript 函式的區別?TypeScript函式JavaScript
- prop()函式和attr()函式的區別函式
- JavaScript:鉤子函式與回撥函式的區別JavaScript函式
- Python內建函式示例Python函式
- python常用內建函式Python函式
- 1.5.5 Python內建函式Python函式
- Python內建函式(一)Python函式
- Python內建函式(二)Python函式
- Python 內建函式大全Python函式
- python內建函式大全Python函式
- python 常用內建函式Python函式
- 函式外與函式內的變數函式變數
- Python中eval函式的表示式如何使用Python函式