2017-12-22 29 views
1

목표 : map 키의 longlat 튜플을 아래의 request.POST에서 추출하고 싶습니다.ast.literal_eval - 목록에있는 문자열 요소 위로 반복합니다.

<QueryDict: {'map': ['(38.70053557156445, 149.81571853160858)', '(38.70060091643143, 149.8153966665268)'], 'csrfmiddlewaretoken': ###}> 

문제 : 나는 튜플을 추출 할 수 있지만 어떻게 든에만 2 튜플을 반환 ast.literal_eval을 사용했다.

markers = request.POST 
position = ast.literal_eval(markers['map']) 

은 또한에 map 이상 반복 시도했지만이 튜플 괄호에 나에게 SyntaxError: unexpected EOF while parsing을주고있다.

for idx, val in enumerate(markers['map']): 
position = ast.literal_eval(markers['map'][idx]) 

마지막으로, 나는 list(map(ast.literal_eval, markers['map']))을 시도했지만이 위와 같은 SyntaxError를 반환합니다.

답변

0

그것은 쿼리 문자열에 대한 일반적이다 장고의 QueryDictrequires that you specify the type you’re looking for 있도록 여러 값을 하나의 값과 키 두 키를 나타내는 데 사용되는 :

position = list(map(ast.literal_eval, markers.getlist('map'))) 
+0

을 내가 원하는 정확히 무엇을! 고마워요 milllions :) – useruser