Python

[Python] eval() 함수와 exec() 함수

YaluStar 2019. 1. 14. 23:52

[Python] eval() 함수와 exec() 함수


eval() 함exec() 함수에 대하여 알아보겠습니다.

둘다 파이썬의 내장 함수이며, 문자열로 표현된 파이썬 코드를 실행할 때 사용합니다.




eval() 함수


문자열로 표현된 파이썬 인수로 받아 파이썬 컴파일 코드로 변환한다.

파이썬 인터프리터가 번역하여 실행할 수 있다.


>>>  a = 1

>>>  a = eval(‘a + 4’)

>>>  a

5


eval() 함수만을 처리할 수 있기 때문에 을 인수로 받으면 SyntaxError가 발생한다.

>>>  eval(‘a = a + 4’)

SyntaxError: invalid syntax




exec() 함수


문자열로 표현된 을 인수로 받아 파이썬 컴파일 코드로 변환한다.

파이썬 인터프리터가 번역하여 실행할 수 있다.


>>>  a = 5

>>>  exec(‘ a = a + 4’)

>>> a

9


exec() 함수여러 개의 문으로 사용할 수 있다.

>>>  s = ‘’’

a = 1

if a > 0:

    print(‘Success’)

‘’’

>>>  exec(s)

Success



이상으로 eval과 exec 함수에 대하여 알아보았습니다.


반응형

'Python' 카테고리의 다른 글

[Python] print() 함수에 대하여 알아보기  (0) 2019.01.17
[Python] input() 함수에 대하여 알아보기  (0) 2019.01.16
[Python] compile() 함수  (0) 2019.01.15
[Python] 기초문  (0) 2019.01.13
Python 설치하기  (0) 2019.01.11