小编dbl*_*iss的帖子

TypeError:dist必须是Distribution实例

我的包裹取决于BeautifulSoup.如果我在一个新的virtualenv via中安装我的软件包python setup.py develop,我会收到以下错误.如果我python setup.py develop第二次执行,一切似乎都运行正常.我不知道,发生了什么.如何修复它以获得可重复的设置?

Best match: beautifulsoup4 4.3.2
Downloading https://pypi.python.org/packages/source/b/beautifulsoup4/beautifulsoup4-4.3.2.tar.gz#md5=b8d157a204d56512a4cc196e53e7d8ee
Processing beautifulsoup4-4.3.2.tar.gz
Writing /tmp/easy_install-1eBfi3/beautifulsoup4-4.3.2/setup.cfg
Running beautifulsoup4-4.3.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-1eBfi3/beautifulsoup4-4.3.2/egg-dist-tmp-YmoFSq
Traceback (most recent call last):
  File "setup.py", line 73, in <module>
    """,
  File "/usr/lib/python2.7/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/home/domma/VirtualEnvs/orcid/local/lib/python2.7/site-packages/setuptools/command/develop.py", line 27, in run
    self.install_for_development()
  File "/home/domma/VirtualEnvs/orcid/local/lib/python2.7/site-packages/setuptools/command/develop.py", line 129, in install_for_development
    self.process_distribution(None, self.dist, not self.no_deps)
  File "/home/domma/VirtualEnvs/orcid/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 671, …
Run Code Online (Sandbox Code Playgroud)

python distutils setuptools

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

是否有一个numpy函数,允许您指定开始,步骤和数字?

我们都很熟悉np.linspace,它创建给出的阵列start,stopnum元素:

In [1]: import numpy as np

In [2]: np.linspace(0, 10, 9)
Out[2]: array([  0.  ,   1.25,   2.5 ,   3.75,   5.  ,   6.25,   7.5 ,   8.75,  10.  ])
Run Code Online (Sandbox Code Playgroud)

同样,谁能够忘记np.arange,创造给予阵列start,stopstep:

In [4]: np.arange(0, 10, 1.25)
Out[4]: array([ 0.  ,  1.25,  2.5 ,  3.75,  5.  ,  6.25,  7.5 ,  8.75])
Run Code Online (Sandbox Code Playgroud)

但有一个功能,允许您指定一个start,stepnum元素,但省略了stop?应该有.

python arrays numpy range

9
推荐指数
4
解决办法
7677
查看次数

欺骗numpy/python代表非常大和非常小的数字

我需要在从低到低的范围内计算以下函数的积分-150:

import numpy as np
from scipy.special import ndtr

def my_func(x):
    return np.exp(x ** 2) * 2 * ndtr(x * np.sqrt(2))
Run Code Online (Sandbox Code Playgroud)

问题是这部分功能

np.exp(x ** 2)
Run Code Online (Sandbox Code Playgroud)

倾向于无穷大 - 我得到inf的值x小于约-26.

而这部分功能

2 * ndtr(x * np.sqrt(2))
Run Code Online (Sandbox Code Playgroud)

这相当于

from scipy.special import erf

1 + erf(x)
Run Code Online (Sandbox Code Playgroud)

倾向于0.

因此,一个非常非常小的数字非常非常大,应该给我一个合理大小的数字 - 但是,而不是那个,python给了我nan.

我能做些什么来规避这个问题?

python floating-point numbers numpy scipy

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

了解偏移方法的返回值

id="stimulus"在HTML文档中有一个元素.

当我在浏览器中打开此文档并使用浏览器控制台调查属性时#stimulus,这就是我所看到的:

> $('#stimulus').offset()
< Object {top: 0, left: 0}
> $('#stimulus').css('top')
< "-155.761px"
> $('#stimulus').css('left')
< "253.087px"
Run Code Online (Sandbox Code Playgroud)

我怎么解释这个?如何topoffset从不同的top使用所访问的css方法是什么?

html javascript css jquery offset

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

更改错误栏大小

我必须改变我的情节中的标记大小(使它们更大).如何更改错误栏的宽度呢?我正在使用matplotlib.谢谢.

plot=ax.errorbar(x,y, yerr=[y1,y2], color='red', fmt='.', markersize='10', ecolor='red',capsize=4)
Run Code Online (Sandbox Code Playgroud)

matplotlib

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

在Cython中调用外部c ++模板函数

我在c ++头文件中声明并实现了许多c ++模板函数,我想访问Cython中的一些函数.

假设c ++代码header.hpp如下所示

template <class T> 
T doublit(T& x) {
    return 2*x;
}
Run Code Online (Sandbox Code Playgroud)

我需要在.pyx文件和setup.py文件中编写什么才能在Python中使用该函数

>>> import modname
>>> print modname.doublit(3)
6
Run Code Online (Sandbox Code Playgroud)

PS:是否可以在PYPY中访问相同的功能?如果是的话,怎么样?


谢谢你的帮助.但是当我试图按照你的方式行事时,我还有其他困难(下面).

doublit.h

template <class T> 
T doublit(T& x) {
   return 2*x;
}
Run Code Online (Sandbox Code Playgroud)

cdoublit.pxd

cdef extern from "doublit.h":
    cdef int doublit1 "doublit<int>"(int& foo)
    cdef double doublit2 "doublit<double>"(double& foo)
Run Code Online (Sandbox Code Playgroud)

doublit.pyx

# main.pyx file
from cdoublit cimport *

cdef int n1 = 5
cdef double n2 = 5.0
print(doublit1(n1))
print(doublit2(n2))
Run Code Online (Sandbox Code Playgroud)

和setup.py

from distutils.core import setup
from distutils.extension …
Run Code Online (Sandbox Code Playgroud)

python cython

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

为什么 IPython 不为我编写的模块提供完整的追溯?

我很困惑为什么当我编写的模块中的函数出现错误时,IPython 没有向我显示函数中导致错误的行的完整回溯。

注意:我对这个特定错误的原因并不感到困惑,而是对为什么 IPython 没有向我展示原因感到困惑。

我的模块被调用module.py,它包含函数function,在它下面写了一个if __name__ == '__main__'块。(模块和函数名称已更改以保护无辜者的身份——或者可能不是那么无辜。)

这是引发错误时我得到的回溯。(注意缺少关于哪一行function导致错误的信息。)

In [1]: import module as m

In [2]: call = m.function('hello')
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-2-ec0c1e40ec8c> in <module>()
----> 1 call = m.function('hello')

/home/module.py in function(greeting)

TypeError: join() takes exactly one argument (2 given)
Run Code Online (Sandbox Code Playgroud)

python ipython traceback

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

如何在不安装新软件包的情况下在 Windows 上执行文件锁定

我已将代码添加到 Python 包 ( brian2) 中,该包在文件上放置了排他锁以防止出现竞争条件。但是,由于此代码包含对 的调用fcntl,因此它不适用于 Windows。有没有办法让我在不安装新软件包的情况下对 Windows 中的文件设置独占锁,比如pywin32?(我不想向 . 添加依赖项brian2。)

python locking pywin32 fcntl

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

scipy中的有界根查找

Scipy 提供了几个看似等效的函数,用于在给定区间内查找函数的根:

brentq(f, a, b[, args, xtol, rtol, maxiter, ...]) 在给定的区间内找到一个函数的根。

brenth(f, a, b[, args, xtol, rtol, maxiter, ...]) 在 [a,b] 中找到 f 的根。

ridder(f, a, b[, args, xtol, rtol, maxiter, ...]) 在一个区间内找到一个函数的根。

bisect(f, a, b[, args, xtol, rtol, maxiter, ...]) 在区间内查找函数的根。

(请参阅此网页。)

任何人都可以提供一些指导方针来选择其中之一吗?找到适合我的案例的最佳策略是简单的反复试验吗?

python optimization minimize scipy

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

@SpringApplicationConfiguration和@ContextConfiguration之间的区别

之间有什么区别@SpringApplicationConfiguration@ContextConfiguration相对于JUnit测试案例?

java configuration junit spring

6
推荐指数
2
解决办法
2556
查看次数