小编mal*_*ngi的帖子

在Python中实现回调 - 将可调用的引用传递给当前函数

我想Observable在Python中为几个工作者实现模式,并遇到了这个有用的片段:

class Event(object):
    pass

class Observable(object):
    def __init__(self):
        self.callbacks = []
    def subscribe(self, callback):
        self.callbacks.append(callback)
    def fire(self, **attrs):
        e = Event()
        e.source = self
        for k, v in attrs.iteritems():
            setattr(e, k, v)
        for fn in self.callbacks:
            fn(e)
Run Code Online (Sandbox Code Playgroud)

来源:这里

据我所知,为了这个subscribe,我需要将回调函数传递给将被调用的函数fire.如果调用函数是一个class方法,大概我可以使用self,但在没有这个的情况下 - 我怎么能直接得到一个对该self.callbacks.append(callback)位有用的回调?

python design-patterns functional-programming callback observer-pattern

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

乳胶 - 包括风景pdf

在纵向.tex文档(使用pdflatex)中包含大型横向pdf无法解决问题.

当它出现时,只显示pdf的最左端,现在重要的是我制作比例的小.我似乎无法让它以横向模式显示......

我正在使用的代码有什么问题吗?

\begin{landscape}
\includegraphics[scale=0.1]{Appendix2.pdf}
\end{landscape}
Run Code Online (Sandbox Code Playgroud)

latex

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

Mongodb - 可靠性问题仍然很重要吗?

我有几个sqlite dbs(我说约15GB),总共约100万行 - 所以不是超级大.我在看mongodb,它看起来很容易使用,特别是如果我想尝试对构成数据库的文档进行一些基本的自然语言处理.

我以前从未与Mongo合作过,没有必要从头开始学习(将在python中工作).在谷歌搜索了一下后,我偶然发现了一些关于Mongodb re的恐怖故事.可靠性.这仍然是一个主要问题吗?在紧急情况下,我当然会保留sqlite备份,但我不必经常重建我的mongo数据库.

只是想知道人们最近与Mongo实际面临的数据腐败问题是什么?这是一个大问题吗?

谢谢!

python sqlite mongodb

12
推荐指数
2
解决办法
3190
查看次数

用virtualenv分发python代码?

我想将一些具有一些外部依赖性的python代码分发给只安装了核心python的机器(以及不熟悉的用户easy_install等).

我想知道是否可以将virtualenv用于此目的?我应该能够编写一些触发virtualenv的bash脚本(使用合适的软件包),然后运行我的代码..但这看起来有些混乱,我想知道我是否重新发明了这个轮子?

是否有任何简单的解决方案来分发具有依赖关系的python代码,理想情况下sudo在客户端机器上不需要?

python installer virtualenv distribute

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

高容量SVM(机器学习)系统

我正在研究一个可能的机器学习项目,该项目预计将使用SVM(支持向量机)和可能的一些ANN进行机器学习的高速计算.

我非常适合在matlab上使用这些,但主要是在小型数据集中,仅用于实验.我想知道这种基于matlab的方法是否会扩展?或者我应该研究其他什么?基于C++/gpu的计算?java包装的matlab代码并将其推送到app引擎?

顺便提一下,似乎有很多关于GPU的文献,但关于它们在使用matlab的机器学习应用程序上有多大用处并不多,而且最便宜的CUDA enlabled GPU可以买到?它甚至值得麻烦吗?

c java matlab machine-learning svm

7
推荐指数
2
解决办法
1867
查看次数

通过Python访问XAMPP mysql

我在过去只使用过sqlite之后尝试使用mysql.

我已经XAMPP在Linux(ubuntu)上mysql安装并运行良好(至少与phpMyadmin一样).但是,我无法使MySQLdb(python lib)工作{使用apt安装此功能}.准确地说:


>>> import MySQLdb
>>> db = MySQLdb.connect(host="localhost",db="opfine")
Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "/usr/lib/pymodules/python2.6/MySQLdb/__init__.py", line 81, in Connect
    return Connection(*args, **kwargs)
  File "/usr/lib/pymodules/python2.6/MySQLdb/connections.py", line 170, in __init_
  ...
    super(Connection, self).__init__(*args, **kwargs2)
Run Code Online (Sandbox Code Playgroud)

OperationalError:(2002,"无法通过套接字连接到本地MySQL服务器'/ var /run/mysqld/mysqld.sock'(2)")

我正在猜测

无法通过套接字'/var/run/mysqld/mysqld.sock连接到本地MySQL服务器

意味着它期待某种本地安装(即不在其中XAMPP),但我无法弄清楚如何进行修改以使其与其XAMMP味道一起工作mysql.

非常感谢帮助!

python mysql

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

识别单元格数组中的唯一元素

我在MATLAB中有一个45x2的单元格,第一列是双倍的任意大小的矩阵.

其中一些矩阵是重复的,而另一些则不是.我试图去除唯一的矩阵(但记录重复次数),并按原样保留第二列.

我已经尝试了很多东西(制表,hist等),但由于细胞结构(我认为)它们都失败了.如何做到这一点,而不是单独循环每一个?

matlab cells

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

汇编中的堆栈/基址指针

我知道这个话题已经覆盖生厌这里,并在互联网上其他地方-但希望这个问题很简单,因为我试图让我的头周围装配...

因此,如果我理解正确,ebp(基指针)将指向堆栈的顶部,并且esp(堆栈指针)将指向底部 - 因为堆栈向下增长.因此,esp指向"当前位置".因此,在函数调用中,一旦将ebp保存在堆栈上,就会为函数插入一个新的堆栈帧.因此,对于下图,如果您从N-3开始,您将通过函数调用转到N-2.但是当你在N-2时 - 你的ebp == 25和esp == 24(至少最初,在任何数据被放入堆栈之前)?

这是正确的还是我在这里切线?

谢谢!

http://upload.wikimedia.org/wikipedia/en/a/a7/ProgramCallStack2.png http://upload.wikimedia.org/wikipedia/en/a/a7/ProgramCallStack2.png

x86 assembly callstack backtrace stack-frame

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

Python(或者JavaScript/Ruby):开源项目,它会给我一点点的掌控

我一直在寻找我的第一个开源项目的互联网漫游 - 而且大多数酷的似乎是github上的单人乐队,我可以分叉 - 但是我不会提供代码审查等等我认为我想要,所以我可以提高我的python能力.

Web.py,flask,celery,twisted等看起来很有趣 - 到目前为止只有后者似乎是我可以正确贡献的东西的候选者,但即使我是一个体面的(ish)python程序员,我认为整个事件驱动的事情是对于我来说,能够有意义地贡献一段时间的学习曲线可能太陡峭......所以我可能想从别处开始.

有什么建议?

顺便说一句.是的,这里有一个重复的问题:https://stackoverflow.com/questions/117561/what-are-good-open-source-projects-in-python-for-which-i-can-be-a-contributor - 但它已经两年了,我认为假设新的东西/项目将在此期间出现是公平的.

谢谢!

javascript ruby python open-source

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

Python - 像素和相关值的有效表示

我使用python与肥胖型(约2000×2000)的矩阵,其中每个工作I,J在矩阵点代表单个像素.

矩阵本身是稀疏的(即它们的大部分将具有零值),但是当它们被更新时,它们倾向于增量操作,对于矩形"块"中的大量相邻像素,而不是这里的随机像素或那里(我目前没有利用的财产......).对矩阵算法有点新意,但我已经研究了许多可能的解决方案,包括scipy稀疏矩阵的各种风格.到目前为止,协调(COO)矩阵似乎是最有希望的.因此,例如,我想增加一个块形状,我必须做的事情是:

>>> from scipy import sparse
>>> from numpy import array
>>> I = array([0,0,0,0])
>>> J = array([0,1,2,3])
>>> V = array([1,1,1,1])
>>> incr_matrix = sparse.coo_matrix((V,(I,J)),shape=(100,100))
>>> main_matrix += incr_matrix  #where main_matrix was previously defined
Run Code Online (Sandbox Code Playgroud)

在未来,我希望在任何情况下都有更丰富的像素值表示(代表RGB等的元组),numpy数组不支持开箱即用(或者我可能需要使用).

最终我会有一些这些矩阵,我需要做简单的算术,我需要代码尽可能高效 - 并且可以分发,所以我需要能够坚持和交换这些物体在小型表示中没有实质性的惩罚.我想知道这是否是正确的方法,或者我是否应该使用dicts等自己的结构?

python numpy matrix sparse-matrix data-structures

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