2013-03-12 2 views
1

어떻게 정수 목록의 문자열을 정수 목록으로 변환합니까?목록의 문자열을 int의 목록으로 변환

예 입력 (타입 : 스트링)

"[156, 100, 713]" 

예 변환 (형식 : INT 목록)

[156, 100, 713] 
+0

문자열의 첫 번째와 마지막 문자를 제거 후 나는 그것이 효율적이지 생각, 그래서 여기 물어 ','분할합니다. – nyebelinn

답변

2

그것에 ast.literal_eval를 사용하면 끝났습니다. 여기서 모든 보안 문제가 정규 eval이 아니므로 문자열이 올바른지 확인하는 등의 작업을 할 필요가 없습니다. 물론이 작업을 직접 구문 분석하고 싶다면 다음 작업을 수행 할 수 있습니다. 아주 간단한 목록-이해 :

s = "[156, 100, 713]" 
print [ int(x) for x in s.translate(None,'[]').split(',') ] 
2
>>> import json 
>>> a = "[156, 100, 713]" 
>>> json.loads(a) 
[156, 100, 713] 
관련 문제