2011-03-01 14 views
6

पर तर्क विभाजित क्यों करता है मैं अपने PHP अनुप्रयोग के आउटपुट की जांच करने के लिए पायथन में एक टेस्ट स्क्रिप्ट लिख रहा हूं और मुझे पाइथन के urlparse.parse_qs() फ़ंक्शन के साथ कोई समस्या है। स्ट्रिंग डेलीमीटर (AFAIK) प्राप्त करें एक एम्परसेंड है। समारोह (के रूप में मैं समझता हूँ) अजगर शब्दकोश में किसी GET स्ट्रिंग विभाजित करने के लिए है, ताकि count=2&offset=5&userID=1 के लिए उत्पादन किया जाना चाहिए माना जाता है:पाइथन के urlparse.parse_qs() अर्धविराम

{'count': ['2'], 'userID': ['1'], 'offset': ['5']} 

और यह है।

[('3', ''), ('15', ''), ('ids', '5')] 

मुझे लगता है कि वैध उत्पादन इस तरह दिखना चाहिए:

{'ids': ['5;15;3']} 

मैं क्या कर रहा हूँ लेकिन जब मैं प्राप्त में सीएसवी पारित करने के लिए कोशिश ids=5;15;3 के रूप में (सेमीकॉलन; से अलग) इस तरह के, मैं निम्नलिखित मिल गलत कर रहे हो रेखा इस तरह दिखता है:

args = urlparse.parse_qs(sys.argv[2], keep_blank_values=True) 

उत्तर

13
+0

धन्यवाद, आप बहुत उपयोगी रहे हैं। – czesiek

+1

मन उड़ा ..... –

+1

यह सलाह पुरानी है और अब इसका पालन नहीं किया जाना चाहिए। https://stackoverflow.com/a/40768572/40013 –

संबंधित मुद्दे