Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 문자열을 어떻게 평가하고 객체를 반환합니까?


내장된 eval() 함수에는 문자열 인수가 필요합니다. 그러나 Python 인터프리터는 문자열을 Python 표현식으로 취급하고 유효한지 평가한 다음 표현식에서 생성된 유형 객체를 반환합니다.

산술 표현식이 포함된 문자열

>>> x=eval('2+2')
>>> type(x)
<class 'int'>
>>> x
4

목록/튜플을 평가하는 문자열

>>> x=eval('tuple([1,2,3])')
>>> x
(1, 2, 3)
>>> type(x)
<class 'tuple'>

목록 이해 표현식을 포함하는 문자열

>>> x = eval('list((a*2 for a in range(5)))')
>>> x
[0, 2, 4, 6, 8]
>>> type(x)
<class 'list'>