小编Abi*_*d A的帖子

查找其键与子字符串匹配的字典项

我有一个像这样构造的大字典:

programs['New York'] = 'some values...' 
programs['Port Authority of New York'] = 'some values...' 
programs['New York City'] = 'some values...'
...
Run Code Online (Sandbox Code Playgroud)

如何返回programs其键提到"纽约"(不区分大小写)的所有元素?在上面的例子中,我想要获得所有这三个项目.

编辑:字典非常大,预计会随着时间的推移而变大.

python

39
推荐指数
5
解决办法
7万
查看次数

用于将文件转换为MP3并设置其质量的Python库

我正在尝试找到一个Python库来获取音频文件(例如.ogg,.wav)并将其转换为mp3以便在网页上播放.

此外,任何关于设置其播放质量的想法都会很棒.

谢谢.

python compression audio

18
推荐指数
2
解决办法
3万
查看次数

缓存如何影响内存消耗?

我有一个具有搜索功能的应用程序.此功能在我缓存24小时的巨型对象(字典)中查找搜索项.对象大约有50,000个按键,重约10MB.

当我在我的主机上分析内存使用情况时,我注意到在经过几次查询后,内存使用量从大约50MB变为超过450MB,这促使我的托管服务提供商终止该应用程序.

所以我想知道这里发生了什么.具体来说,缓存如何利用每个请求的内存,我该怎么做才能解决这个问题?

django caching

6
推荐指数
1
解决办法
390
查看次数

加载导致内存峰值的字典对象

我有一个字典对象,有大约60,000个密钥,我在我的Django视图中缓存和访问.该视图提供了基本的搜索功能,我在字典中查找搜索词,如下所示:

projects_map = cache.get('projects_map')
projects_map.get('search term')
Run Code Online (Sandbox Code Playgroud)

然而,只是抓住缓存的对象(在第1行)会导致服务器上的内存使用率大幅增加 - 有时超过100MB - 即使在返回值并呈现模板后内存也不会释放.

我怎样才能让记忆像这样抬起来?此外,我尝试在获取值后显式删除对象,但即使这样也不会释放内存峰值.

任何帮助是极大的赞赏.

更新:解决方案我最终实施

我决定实现自己的索引表,在其中存储密钥及其pi​​ckle值.现在,get()我使用:而不是在字典上使用:

ProjectsIndex.objects.get(index_key=<search term>)

并取消价值.这似乎解决了内存问题,因为我不再将巨型对象加载到内存中.它为页面添加了另一个小查询,但这就是它.似乎是一个完美的解决方案......现在.

python django

5
推荐指数
1
解决办法
382
查看次数

使用POST数据进行身份验证后保存表单数据

我有一个视图,需要用户登录.它将一些数据写入数据库,所以我寻找使用表单提交 request.method == 'POST'

流程如下:如果用户未登录,则会将其重定向到登录页面.登录后,我使用next参数将它们重定向到我的初始视图.问题是重定向不再是POST而是GET.

如何将此请求设为POST?我应该使用其他一些模式来做到这一点吗?

编辑:这是我的观点:

@login_required
def some_view(request):
    if request.method == 'POST':
        # Do something
        return HttpResponseRedirect('some_url')
Run Code Online (Sandbox Code Playgroud)

django

1
推荐指数
1
解决办法
701
查看次数

标签 统计

django ×3

python ×3

audio ×1

caching ×1

compression ×1