小编Noa*_*oah的帖子

什么是错误的魔数错误?

什么是python中的"错误幻数"ImportError,我该如何解决?

我在网上找到的唯一的东西表明这是由编译.py - > .pyc文件然后尝试使用错误版本的python引起的.然而,在我的情况下,文件似乎导入了一些细节而不是其他文件,我不知道为什么.

回溯中提供的信息python并不是特别有用(这就是我在这里问的原因......),但是这里有以下情况:

Traceback (most recent call last):
  File "run.py", line 7, in <module>
    from Normalization import Normalizer
Run Code Online (Sandbox Code Playgroud)

python

292
推荐指数
4
解决办法
23万
查看次数

以非交互方式运行IPython/Jupyter笔记本

有没有人知道是否可以从命令行以非交互方式运行IPython/Jupyter笔记本,并将结果.ipynb文件与运行结果一起保存.如果还不可能,使用phantomJS实现有多难,可以打开和关闭内核,以及打开和关闭Web服务器的东西?

更具体地说,假设我已经有一个笔记本original.ipynb,我想重新运行该笔记本中的所有单元格并将结果保存在新笔记本中new.ipynb,但是在命令行上使用一个命令执行此操作,而无需在浏览器中进行交互或关闭内核或Web服务器,并假设没有内核或Web服务器已在运行.

示例命令:

$ ipython notebook run original.ipynb --output=new.ipynb

ipython jupyter-notebook

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

SQLAlchemy继承

我对sqlalchemy下的继承感到有点困惑,我甚至不确定我应该在这里使用什么类型的继承(单表,连接表,具体).我有一个基类,其中包含一些在子类之间共享的信息,以及一些完全独立的数据.有时候,我会想要来自所有类的数据,有时只需要来自子类的数据.这是一个例子:

class Building:
    def __init__(self, x, y):
        self.x = x
        self.y = y

class Commercial(Building):
    def __init__(self, x, y, business):
        Building.__init__(self, x, y)
        self.business = business

class Residential(Building):
    def __init__(self, x, y, numResidents):
        Building.__init__(self, x, y, layer)
        self.numResidents = numResidents
Run Code Online (Sandbox Code Playgroud)

我如何使用声明式将其转换为SQLAlchemy?那么,如何将我查询该建筑物内x>5y>3?或者哪些住宅楼只有1个居民?

python inheritance sqlalchemy

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

Cocoa与MacOS X Keychain的接口

我有一些Mac代码需要存储,访问和更新密码才能将用户与Web API连接起来.放置此信息的正确位置应该是Mac Keychain,但似乎没有cocoa接口(请参阅此答案) - 这仍然是正确的吗?

我看过Apple的Keychain文档,API似乎非常笨重.我可以存储并检索记录,但任何更复杂的东西似乎都需要考虑可能出错的地方(请参阅此错误代码列表).

除了通过C代码之外,还有更好的Mac钥匙串接口吗?我最接近的是EMKeychain,但它似乎需要一些工作(例如,除了吐出到控制台之外没有错误处理代码).

macos cocoa objective-c keychain

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

比较python中的持久存储解决方案

我正在开始一个新的科学项目,它有大量的数据(数百万条目),我想以一种简单快捷的格式存储.我遇到了许多不同的潜在选择,但我不确定如何从中挑选.我的数据可能只是存储为字典,或者可能是字典字典.一些潜在的考虑:

  • 速度.每次启动新脚本时,我都无法从磁盘上加载所有数据,我希望尽快访问随机条目.
  • 便于使用.这是python.存储应该感觉像python.
  • 稳定性/成熟.我想要一些目前支持的东西,虽然一些运作良好但仍在开发中的东西会很好.
  • 易于安装.我的系统管理员应该能够在我们的集群上运行它.

我并不太关心存储的大小,但如果选项在这方面真的很糟糕,那可能是一个考虑因素.此外,如果它很重要,我很可能会创建一次数据库,然后只读取它.

我开始关注的一些潜在选项(参见这篇文章):

有关哪些可能更适合我的目的的任何建议?有更好的想法吗?其中一些有后端; 关于哪个文件系统后端最好的建议?

python orm persistence

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

os.path.exists()谎言

我在Linux集群上运行了许多python脚本,一个作业的输出通常是另一个脚本的输入,可能在另一个节点上运行.我发现在其他节点上创建的python通知文件之前有一些不显着的滞后 - os.path.exists()返回false,而open()也失败.我可以做一段时间而不是os.path.exists(mypath)循环,直到文件出现,并且它可能需要花费整整一分钟,这在具有许多步骤并且可能并行运行许多数据集的管道中不是最佳的.

到目前为止,我发现的唯一解决方法是调用subprocess.Popen("ls%s"%(pathdir),shell = True),这会神奇地修复问题.我认为这可能是一个系统问题,但是python可能导致这种情况的任何方式?某种缓存还是什么?到目前为止,我的系统管理员帮助不大.

python

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

在scipy中创建新的发行版

我正在尝试根据我拥有的一些数据创建一个分布,然后从该分布中随机绘制.这就是我所拥有的:

from scipy import stats
import numpy

def getDistribution(data):
    kernel = stats.gaussian_kde(data)
    class rv(stats.rv_continuous):
        def _cdf(self, x):
            return kernel.integrate_box_1d(-numpy.Inf, x)
    return rv()

if __name__ == "__main__":
    # pretend this is real data
    data = numpy.concatenate((numpy.random.normal(2,5,100), numpy.random.normal(25,5,100)))
    d = getDistribution(data)

    print d.rvs(size=100) # this usually fails
Run Code Online (Sandbox Code Playgroud)

我觉得这是做什么我也想,但我经常得到一个错误(见下文),当我尝试这样做d.rvs(),并d.rvs(100)永远不会奏效.难道我做错了什么?有更简单或更好的方法吗?如果它是scipy中的一个bug,有没有办法解决它?

最后,是否有更多关于在某处创建自定义发行版的文档?我发现的最好的是scipy.stats.rv_continuous文档,它非常简洁,不包含任何有用的示例.

追溯:

回溯(最近一次调用最后一次):文件"testDistributions.py",第19行,打印d.rvs(size = 100)文件"/usr/local/lib/python2.6/dist-packages/scipy-0.10.0 -py2.6-linux-x86_64.egg/scipy/stats/distributions.py",第696行,在rvs vals = self._rvs(*args)文件"/usr/local/lib/python2.6/dist-packages /scipy-0.10.0-py2.6-linux-x86_64.egg/scipy/stats/distributions.py",第1193行,在_rvs Y = self._ppf(U,*args)文件"/ usr/local/lib /python2.6/dist-packages/scipy-0.10.0-py2.6-linux-x86_64.egg/scipy/stats/distributions.py",第1212行,在_ppf中返回self.vecfunc(q,*args)文件"/usr/local/lib/python2.6/dist-packages/numpy-1.6.1-py2.6-linux-x86_64.egg/numpy/lib/function_base.py",第1862行,致电 theout = self. thefunc(*newargs)文件"/usr/local/lib/python2.6/dist-packages/scipy-0.10.0-py2.6-linux-x86_64.egg/scipy/stats/distributions.py",第1158行,在_ppf_single_call中返回optimize.brentq(self._ppf_to_solve,self.xa,self.xb,args =(q,)+ args,xtol = self.xtol)文件"/usr/local/lib/python2.6/dist-pac kages/scipy-0.10.0-py2.6-linux-x86_64.egg/scipy/optimize/zeros.py",第366行,brentq r = _zeros._brentq(f,a,b,xtol,maxiter,args, full_output,disp)ValueError:f(a)和f(b)必须有不同的符号

编辑 …

python numpy scipy

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

Python和Rpy2:使用具有"."的选项调用绘图函数.在他们中

我刚刚开始学习如何在python中使用rpy2.我能够制作简单的情节等,但我遇到了R中许多选项使用"."的问题.例如,这是一个有效的R调用:

barplot(t,col = heat.colors(2),names.arg = c("pwn","pwn2"))

其中t是矩阵.

我想在python中使用相同的调用,但它拒绝"." names.arg的一部分.我的理解是在python中你替换了"." 使用"_",所以names_arg例如,但这也不起作用.我知道这是一个基本问题,所以我希望有人见过这个并知道修复.谢谢!

python rpy2

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

如何在提交时创建新头?

我正在研究我的论文并将变化存储在mercurial中.我没有得到一个错误,我有多个头,我很困惑 - 我只有一个工作的存储库,我偶尔推到bitbucket.这是发生的事情:

$ hg commit -m "Fixing up..."
abort: No such file or directory: /Users/me/Dropbox/thesis/thesis_tex/simple.pdf
$ hg commit -m "Adding in page headers"
created new head
Run Code Online (Sandbox Code Playgroud)

......还有一次提交,没有意识到创建新头是一个问题......

$ hg push
pushing to ssh://hg@bitbucket.org/...
searching for changes
abort: push creates new remote heads!
(did you forget to merge? use push -f to force)

$ hg heads
changeset:   26:3823a395b1ce
tag:         tip
user:        me
date:        Fri Aug 26 09:39:45 2011 -0400
summary:     Adding...

changeset:   24:c7c6517d4281
user:        me
date:        Thu Aug 25 16:34:42 …
Run Code Online (Sandbox Code Playgroud)

mercurial

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

如何使用行在Pandas中选择范围

我有一个Pandas数据帧.

我在另一个进程中从该数据帧中选择了一行.

在另一种方法中,我现在需要从行所在的数据帧中选择一个范围,如果有这么多,则返回55行.

这是一些伪代码,希望它有所帮助:

df = DataFrame from csv

row = df[3454]

index = row.index
start = max(0, index - 55)
end = max(1, index)
dfRange = df[start:end]
Run Code Online (Sandbox Code Playgroud)

python pandas

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