[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 |