2010-02-04 61 views
1
params = {'fruit':'orange', 'color':'red', 'size':'5'} 

我怎樣才能把它轉換成字符串:如何將字典轉換爲字符串?

fruit=orange&color=red&size=5 
+0

這是用於創建網址或用於其他目的?你想如何處理字符串內的特殊字符?他們是否應該逃脫作爲URL使用? – 2010-02-04 11:54:21

回答

11

你可以這樣說:

'&'.join('%s=%s' % (k,v) for k,v in params.items()) 

如果你正在建設的網址字符串這將是更好地使用的urllib因爲這也可以正確地逃脫:

>>> params = { 'foo' : 'bar+baz', 'qux' : 'quux' } 
>>> urllib.urlencode(params) 
'qux=quux&foo=bar%2Bbaz' 
3

如果您要編碼url參數您可以使用urllib.urlencode來完成此操作。例如:

import urllib 
params = {'fruit':'orange', 'color':'red', 'size':'5'} 
encoding = urllib.urlencode(params) 

這也將運行字典通過urllib.quote_plus

3

你問這個嗎?

>>> params = {'fruit':'orange', 'color':'red', 'size':'5'} 
>>> import urllib 
>>> urllib.urlencode(params) 
'color=red&fruit=orange&size=5' 
2

如果你想創建一個查詢字符串,Python帶有電池包括:

import urllib 
print(urllib.urlencode({'fruit':'orange', 'color':'red', 'size':'5'}))