Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 문자열로 표현된 리스트를 실제 리스트 객체로 변환하는 방법

파이썬에서는 ast.literal_eval() 함수를 사용하여 문자열 형태의 리스트 표현을 실제 리스트 객체로 변환할 수 있습니다. 이 함수는 문자열을 파이썬 표현식으로 안전하게 평가해 주며, 문자열, 숫자, 튜플, 리스트, 딕셔너리, 불리언, None과 같은 리터럴 구조만 허용합니다.

사용 예제

fruits = "['apple', 'orange', 'banana']"
import ast

fruits = ast.literal_eval(fruits)
print(fruits[1], fruits[0])

출력 결과

위 코드를 실행하면 다음과 같은 결과를 얻습니다.

orange apple

주의 사항

내장 함수인 eval()을 사용하는 것은 임의의 코드가 실행될 수 있어 보안상 위험합니다. 따라서 외부 입력값을 처리할 때는 반드시 제한적인 평가만 수행하는 ast.literal_eval()을 사용해야 합니다.

또한 변환하려는 문자열이 큰따옴표를 사용하는 유효한 JSON 형식이라면, 표준 라이브러리의 json.loads() 함수를 활용하는 것도 좋은 대안입니다.