小编Chi*_*chi的帖子

根据Python中的键/值过滤词典和创建子词典?

好吧,我被卡住了,需要一些帮助......

如果我有一个这样的主词典:

data = [ {"key1": "value1", "key2": "value2", "key1": "value3"},  
{"key1": "value4", "key2": "value5", "key1": "value6"}, 
{"key1": "value1", "key2": "value8", "key1": "value9"} ]
Run Code Online (Sandbox Code Playgroud)

现在,我需要通过该字典来格式化一些数据,即:

for datadict in data:  
    for key, value in datadict.items():  
    ...filter the data...
Run Code Online (Sandbox Code Playgroud)

现在,我将如何在同一个循环中以某种方式(如果可能的话......如果没有,请提出替代方案)检查某些键的值,如果这些值与我的预设相匹配,那么我会将整个列表添加到另一个字典中,从而有效根据某些键和值,当我从这个主词典中走出来时创建较小的词典?

所以,假设我想创建一个子字典,其中包含key1值为"value1"的所有列表,对于上面的列表,我会给出类似下面的内容:

subdata = [ {"key1": "value1", "key2": "value2", "key1": "value3"},  
{"key1": "value1", "key2": "value8", "key1": "value9"} ]
Run Code Online (Sandbox Code Playgroud)

python dictionary list filter

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

在MATLAB中记录功能参数

我正在尝试为传递给MATLAB中的函数的所有输入参数编写通用日志记录函数.是否可以轻松地将所有输入参数传递给另一个函数而无需单独命名参数?在日志记录功能中,我当然可以inputname(i)在for循环中使用来获取参数名称.我宁愿不必在main函数中执行此逻辑.那么,有没有办法做某事LogParams(allInputParams)

matlab logging

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

在vim中执行python命令并获取输出

当使用Python支持编译Vim时,您可以使用该:python命令使用Python脚本编写Vim脚本.我如何使用它来执行命令并在光标下插入结果?例如,如果我要执行:python import os; os.listdir('aDirectory')[0],我希望返回的第一个文件名插入光标下.

编辑:为了澄清,我想要与去往终端,执行命令,复制结果和执行相同的效果"+p.

python vim

5
推荐指数
2
解决办法
4849
查看次数

单个Web服务器上的PyPy + PHP

我正在从头开始设置一个Web服务器,主要用于使用Python编写webapps.在查看Apache + mod_wsgi的替代方案时,看起来pypy在我打算用于我自己的应用程序的几乎所有内容中都表现得非常好.没有真正有机会正确使用PyPy,我觉得这是一个很好的机会来使用它,因为我不需要服务器是防弹的.

但是,我想在Web服务器上运行一些PHP应用程序以用于管理目的(例如,PHPPgAdmin).是否有一个优雅的解决方案,允许我在像Apache这样的PHP兼容的网络服务器中使用PyPy?或者我将不得不运行CherryPy/Paste或其他WSGI服务器之一,Apache和mod_wsgi在一个单独的端口上提供管理服务?

php python apache pypy wsgi

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

用Java读取JPEG

我正在尝试将JPEG转换为,BufferedImage以显示在上JPanel。但是,javax.imageio.ImageIO.read()对于它处理的JPEG似乎很挑剔,经常抛出IIOException。几乎所有要命名的图像阅读器都可以正常打开相同的JPEG。

我看过Apache的SanselanJAI。但是Sanselan无法处理JPEG,并且JAI不适用于64位Windows平台,并且似乎没有得到维护(最新更新是2006年)。关于StackOverflow的先前答案建议 com.sun.image.codec.jpeg.JPEGCodec,但是在Java 5中已弃用,在7中已消失。

这些是我唯一的选择吗?真的没有Java库能够将JPEG可靠地读取到BufferedImage吗?

java jpeg javax.imageio

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

Python 2.6到2.5备忘单

我已经编写了我的代码来瞄准Python 2.6.5,但我现在需要在只有2.5.4的集群上运行它,这在我编写代码时并不存在.将代码反向移植到2.5应该不会太难,但我想知道是否有一个备忘单或自动化工具可以帮助我解决这个问题.对于某些事情,如with声明,正确的__future__导入将起到作用,但不适用于其他一些事情.

python backport python-2.6 python-2.5

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

在jython中使用ctypes

我在python脚本中使用ctypes lib时遇到了麻烦.这是我的代码(在互联网上找到):

if __name__ == "__main__":
    from ctypes import *
    user32 = windll.user32
    kernel32 = windll.kernel32

    class RECT(Structure):
        _fields_ = [
            ("left", c_ulong),
            ("top", c_ulong),
            ("right", c_ulong),
            ("bottom", c_ulong)];

    class GUITHREADINFO(Structure):
        _fields_ = [
        ("cbSize", c_ulong),
        ("flags", c_ulong),
        ("hwndActive", c_ulong),
        ("hwndFocus", c_ulong),
        ("hwndCapture", c_ulong),
        ("hwndMenuOwner", c_ulong),
        ("hwndMoveSize", c_ulong),
        ("hwndCaret", c_ulong),
        ("rcCaret", RECT)
        ]

    def moveCursorInCurrentWindow(x, y):
        # Find the focussed window.
        guiThreadInfo = GUITHREADINFO(cbSize=sizeof(GUITHREADINFO))
        user32.GetGUIThreadInfo(0, byref(guiThreadInfo))
        focussedWindow = guiThreadInfo.hwndFocus

        # Find the screen position of the window.
        windowRect = RECT() …
Run Code Online (Sandbox Code Playgroud)

python ctypes jython

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

在绘制3d曲面时去除伪影/网格线

使用绘制曲面时mpl_toolkits.mplot3d.Axes3D.plot_surface(),会出现似乎遵循绘制曲面曲线的线条.例如:

X, Y = numpy.meshgrid(numpy.arange(some_range), numpy.arange(some_other_range))
Z1, Z2 = numpy.array(getRate()) 
#getRate is a function that returns an array of shape (len(some_range), len(some_other_range)  

fig = pyplot.figure()
ax = mplot3d.Axes3D(fig)

ax.plot_surface(X, Y, Z1, color='w', alpha=0.2)
ax.plot_surface(X, Y, Z2, color='b', alpha=0.2)

pyplot.show()
Run Code Online (Sandbox Code Playgroud)

有没有办法摆脱血腥的东西,所以你只是有一个光滑的表面?我附上了一张图片来表明我的意思.在此输入图像描述

python matplotlib mplot3d

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

在Django webapp中处理计算密集型任务

我有一个桌面应用程序,我正在移植到Django webapp.该应用程序有一些非常计算密集的部分(使用numpy,scipy和pandas,以及其他库).显然,将计算密集型代码导入webapp并运行它并不是一个好主意,因为这将迫使客户端等待响应.

因此,您必须将这些任务归于后台进程,该进程通知客户端(我猜测是通过AJAX)和/或在数据库完成时将结果存储在数据库中.

在多个并发用户的情况下,您也不希望所有这些任务同时运行,因为即使只有少量并发请求,这也是让您的服务器瘫痪的好方法.理想情况下,您希望webapp的每个实例将其任务放入作业队列,然后以最佳方式自动运行它们(基于核心数,可用内存等).

有没有好的Python库来帮助解决这类问题?是否存在人们在这种情况下使用的一般策略?或者这只是选择一个好的批处理调度程序并为每个进程生成一个新的Python解释器的问题?

python django numpy

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

创造一个类似熔岩灯的动画

我最近看到的东西让我想知道如何为屏幕保护程序或游戏创建逼真的(2D)熔岩灯式动画.

当然可以使用偏微分方程对熔岩灯的物理进行建模,并将其转化为代码.然而,这可能是非常困难的(因为有几个因素,其中最重要的是蜡的"斑点"的几何形状的固有不规则性和大量的变量)并且可能在计算上太昂贵而无法计算即时的.

分析解决方案(如果有的话)可能同样没用,因为你想要在动画中有一定程度的随机性(或随机性).

所以,问题是,任何人都可以想到一种方法,可以让你在一台典型的台式机/笔记本电脑上实时(比如10-30 FPS)动画一个逼真的熔岩灯,而无需在任何物理模型中建模很详细?换句话说,有没有办法"欺骗"?

graphics animation

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

获取Android上的活动驱动程序列表

有没有直接的方法来获取当前在Android设备上使用的驱动程序列表?lsmod列出了少量的驱动程序(3),但我猜测大多数驱动程序都编译到内核而不是模块中.

显然,make menuconfig由于设备本身缺乏开发工具,因此无法工作.我可以下载内核源码,但我希望避免安装整个交叉编译工具链,只是为了满足我的好奇心.

我知道这个问题,但它并没有真正回答我的问题,除了指出为什么 lsmod在这种情况下不起作用.

linux android drivers

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

在芹菜任务中嘲笑一个电话

我有一个运行芹菜任务的烧瓶应用程序.我正在尝试模拟在该任务中发生的单个API调用.

views.py

from mypackage.task_module import my_task
@app.route('/run_task')
def run_task():
    task = my_task.delay()
    return some_response
Run Code Online (Sandbox Code Playgroud)

task_module.py

from mypackage.some_module import SomeClass

@celery.task
def my_task():
    return SomeClass().some_function()
Run Code Online (Sandbox Code Playgroud)

some_module.py

from mypackage.xyz import external_service
class SomeClass(object):
    def some_function(self):
        #do some stuff
        result = external_service(some_param)
        if 'x' in result:
             #do something
        elif 'y' in result:
             #do something else
Run Code Online (Sandbox Code Playgroud)

我想模拟该result = external_service()行,以便我可以触发第一个或第二个代码路径.

所以这就是我正在尝试的:

@mock.patch('mypackage.some_module.external_service', autospec=True)
def test_x_path(my_mock):
    my_mock.return_value = {'x': some_val}
    #run test, expect 'x' code path to run
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用,因为(我认为)补丁发生在Flask的Python过程中,而不是Celery正在使用的补丁.嘲讽任务本身并不像我想的测试工作是多么的任务时的行为外部服务回报'x''y' …

unit-testing celery flask python-mock

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

Python pickle的替代品吗?

当我尝试使用pickle加载转储文件时,python崩溃了代码CLR20r3 !! 我想知道是否有任何pickle替代品,可以转储python对象并加载回来.第三方库是可以接受的.

python ironpython object pickle

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