[Python] eval 함수

전도운·2024년 7월 10일
0
post-custom-banner

파이썬에서의 연산은 숫자와 연산자가 만나 이루어진다. 그런데 나에게 있는 데이터가 문자형으로 된 수식이라면 어떻게 해야할까? 파이썬에서는 eval이라는 함수를 이용해서 이를 편하게 수식으로 변환하여 계산할 수 있다.

  • eval 함수 구문

    eval(expression)
  • 문자열 데이터 사용 예시

    print(eval('1+2'))  # 1+2=3
    print(eval('3' + '*' + '2')) # 3*2 = 6
  • 데이터프레임 사용 예시(아래 데이터프레임에서 column1을 계산하고 싶을 때)
    데이터프레임

    df.column1.map(eval) # series(2, 3)
  • 주의사항

    • eval 함수는 문자열을 코드로 바로 해석하므로 사용하기 편리하다는 장점이 있다. 그러나 아래와 같이 eval 함수를 이용해 프로그래밍을 하면 누군가가 만들어놓은 문자열 코드를 실행을 해버리는 등 보안상의 문제가 생길 수 있으므로 주의를 요하는 함수이다.
      eval(input())
profile
의미 있는 한걸음을 추구합니다.
post-custom-banner

0개의 댓글