2014-03-30 3 views
2

에있는 값 목록을 입력해야합니다.파이썬 요청 데이터에 포함 목록 포함

예 : "custom_label_83": [ 28, 29 ].

이다 나는 데이터 PUT 팅 해요 방법 :

requests.put("https://www.pipelinedeals.com/...", data={'custom_label_83': [28,29]}) 
문제는 내가 그 예를 PUT 때, 나는 단지 29 PUT 인로 끝날 것 같다

때문에 요청의 본문 () 부호화 된 후이 같다 :

결과
custom_label_83%5D=28&custom_fields%5D%5Bcustom_label_83%5D=29 

이 필드는 최종 결과 29 인으로 두 번으로 설정하고, 대신 두 28 및 012,330,076를 포함하는리스트. 나는 PUT 요청의 본문이 같은 싶습니다 :

custom_label_83%5D=28,29 

내가 어떻게해야합니까?

답변

4

당신은 (여러 GET 매개 변수)가 발생하는 행동에 대한 이유를 사용하면의 값으로 목록을 통과 할 때 기본 requests 동작입니다 수 params dict의 키입니다. 당신은 출력이 custom_label_83%5D=28,29 될하려는 경우

, 목록의 값에 가입해야합니다 :

>>> ','.join(map(str, [28, 29])) 
'28,29' 
+0

감사합니다! 이것은 정확히 내가 원하는 것을했습니다. 어떤 이유로 API는 여전히 여기서 작동하지 않지만이 코드는 요구 사항에 부합합니다. – rickcnagy

+1

(적어도 Pipeline 거래의 경우) 이것은 올바른 구문 인'data = { 'some_custom_label []': 'some value'}'입니다. 라벨의 끝에있는'[]'는 그것이 배열임을 나타냅니다. – rickcnagy

+1

@ br1ckb0t 기쁘게 생각합니다. –

0

28과 29를 함께 사용하려면 원하는 목록 내에서 어떻게 든 결합해야합니다. 당신은 문자열, 중첩 된 목록 등 중첩 된 튜플 ...

"custom_label_83": [ '28,29' ] #string example 

"custom_label_83": [ [28,29] ] #nested list example 

"custom_label_83": [ (28,29) ] #nested tuple example