그래서 고유 한 유형을 가진 문자열 목록이 있습니다.고유 한 유형으로 혼합 된 고유 한 유형의 문자열리스트
mixedbag = ['True', '2.7', '3', 'Ninety']
나는 다음과 같이이 변환하고자 : 내가 생각 무엇
[True, 2.7, 3, 'Ninety']
이 목록의 각 항목을 평가하는 체인을 제외하고/큰 시도를 만드는 것입니다,하지만하지 않습니다 이 문제를 다루는 비범 한 방법 인 것 같아.
그래서 고유 한 유형을 가진 문자열 목록이 있습니다.고유 한 유형으로 혼합 된 고유 한 유형의 문자열리스트
mixedbag = ['True', '2.7', '3', 'Ninety']
나는 다음과 같이이 변환하고자 : 내가 생각 무엇
[True, 2.7, 3, 'Ninety']
이 목록의 각 항목을 평가하는 체인을 제외하고/큰 시도를 만드는 것입니다,하지만하지 않습니다 이 문제를 다루는 비범 한 방법 인 것 같아.
try-except 블록에서 ast.literal_eval
을 사용할 수 있습니다.
from ast import literal_eval
def unmix(ele):
try:
ele = literal_eval(ele)
except ValueError:
pass
return ele
데모
>>> list(map(unmix, mixedbag))
[True, 2.7, 3, 'Ninety']
ast.literal_eval
기능 사용 용액 :
import ast
mixedbag = ['True', '2.7', '3', 'Ninety']
evaled = []
for i in mixedbag:
try:
evaled.append(ast.literal_eval(i))
except ValueError:
evaled.append(i)
print(evaled)
출력 :
을 0