数据以“ S \ u00c3o Miguel”的形式存储在数据框中,但数据从模板以“ S%C3o Miguel”的形式返回,Python无法在字典中找到它。我该怎么解决?
我开发了一个应用程序,可以从数据库中获取数据(以及标签),并使用Highcharts库将其绘制在图表上。 当用户单击图表的条形图之一时,其标签将发送回服务器,服务器将返回一些值。
问题是:当第一次从数据库中加载数据时,它存储在数据框中的内存中,其中“ S \ u00c3o Miguel”是值之一,但是当用户单击图表和JQuery时向服务器发出请求,该请求将作为“ S%C3o Miguel”发送回。因此,代码无法在内存中的数据框中找到该密钥。
在将其发送回服务器之前,我曾尝试使用JavaScript上的encodeuricomponent将字符串编码为UTF-8,但没有成功。 模板已经具有标签。
USE_SSL="true" // This will return true
USE_SSL=true // This will return 1
JQuery请求如下:
def getFromDatabase():
[...]
wfarm_names = pd.read_sql(query, engine) #Gets the data from the database
return (list(wfarm_names['CL_NAME'].unique())) #Returns a list with all the keys. The value that causes the problem is returned as 'S\u00c3o Miguel'
def getData(request, cluster):
#In this case, cluster is returned from screen as 'S%C3o Miguel'
wfarm_names = list(general_frame[general_frame['CL_NAME'] == cluster]
#problem occurs here
答案 0 :(得分:0)
看起来jQuery正在编码url,您可以像这样解码:
>>> from urllib import parse
>>> decoded = parse.unquote(url)