본문 바로가기
공부/Python

[python] 문자열을 변수로 사용하고 싶을때 eval()

by 병진들 2021. 5. 14.

데이터 분석을 하다보면 col1, col2, col3 .... col999 와 같이 연속되는 변수가 있는 경우가 있다.

이러한 경우에, 일일히 변수값을 보려고 하면

print(col1)
print(col2)
print(col3)
...
print(col999)

이런식으로 해야될 수도 있는데 너무 끔찍하다.

 

그래서 python 내장 함수인 eval() 함수(매개변수로 받은 expression (=식)을 문자열로 받아서, 실행)를 사용해 주면

for i in range(1, 999):
	print(eval(f"col{i}"))

깔끔하게 해결된다.. 응용은 알아서..

 

ps. eval()함수는 그 자체로 취약점이 될 수 있기 때문에 주의해서 사용해야 함

댓글