문자열 binomial이 매개변수로 주어집니다. binomial은 "a op b" 형태의 이항식이고 a와 b는 음이 아닌 정수, op는 '+', '-', '*' 중 하나입니다. 주어진 식을 계산한 정수를 return 하는 solution 함수를 작성해 주세요.
def solution(binomial):
answer = 0
a, op, b = binomial.split()
if op == '+':
answer = int(a) + int(b)
elif op == '-':
answer = int(a) - int(b)
else:
answer = int(a) * int(b)
return answer
def solution(binomial):
return eval(binomial)
eval
하나만 넣고 돌리면 바로 정답이 나올 줄이야..😂 📌
eval 함수
: 문자열 형태의 파이썬 표현식을 실행하고 그 결과를 반환
결국, 이 함수는 binomial이라는 문자열 수식을 파이썬 코드로 평가하여 계산 결과를 돌려줌
ㄴ ex) binomial이 "3 + 5"라면, eval("3 + 5")는 8을 반환
binomial이 "10 / 2"라면, eval("10 / 2")는 5.0을 반환
✅ 주의할 점 : eval 함수
는 주어진 문자열이 임의의 코드 실행을 가능하게 하므로, 신뢰할 수 없는 입력에 대해 사용하지 않는 것이 좋음