加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python-2.7 – 如何正确安装NumPy ufunc?

发布时间:2020-12-20 13:49:31 所属栏目:Python 来源:网络整理
导读:我试图从 SciPy Docs安装一个示例ufunc,但是当我运行python setup.py build或python setup.py install时,我得到一些关于弃用的NumPy API的警告. 当我运行python setup.py install时,这是输出: $python setup.py installrunning installrunning buildrunning
我试图从 SciPy Docs安装一个示例ufunc,但是当我运行python setup.py build或python setup.py install时,我得到一些关于弃用的NumPy API的警告.

当我运行python setup.py install时,这是输出:

$python setup.py install
running install
running build
running config_cc
unifing config_cc,config,build_clib,build_ext,build commands --compiler options
running config_fc
unifing config_fc,build commands --fcompileroptions
running build_src
build_src
building extension "npufunc_directory.npufunc" sources
build_src: building npy-pkg config files
running build_ext
customize UnixCCompiler
customize UnixCCompiler using build_ext
building 'npufunc_directory.npufunc' extension
compiling C sources
C compiler: gcc -fno-strict-aliasing -ggdb -O2 -pipe -Wimplicit-function-declaration -fdebug-prefix-map=/usr/src/ports/python/python-2.7.8-1.x86_64/build=/usr/src/debug/python-2.7.8-1 -fdebug-prefix-map=/usr/src/ports/python/python-2.7.8-1.x86_64/src/Python-2.7.8=/usr/src/debug/python-2.7.8-1 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes
creating build
creating build/temp.cygwin-1.7.32-x86_64-2.7
compile options: '-I/usr/lib/python2.7/site-packages/numpy/core/include -I/usr/include/python2.7 -c'
gcc: single_type_logit.c
In file included from /usr/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1728:0,from single_type_logit.c:3:
/usr/lib/python2.7/site-packages/numpy/core/include/numpy/npy_deprecated_api.h:11:2: warning: #warning "Using deprecated NumPy API,disable it by #defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp] #warning "Using deprecated NumPy API,disable it by #defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION"
creating build/lib.cygwin-1.7.32-x86_64-2.7
creating build/lib.cygwin-1.7.32-x86_64-2.7/npufunc_directory
gcc -shared -Wl,--enable-auto-image-base -L. build/temp.cygwin-1.7.32-x86_64-2.7/single_type_logit.o -L/usr/lib/python2.7/config -L/usr/lib -lpython2.7 -o build/lib.cygwin-1.7.32-x86_64-2.7/npufunc_directory/npufunc.dll
running scons
running install_lib
copying build/lib.cygwin-1.7.32-x86_64-2.7/npufunc_directory/npufunc.dll -> /usr/lib/python2.7/site-packages/npufunc_directory
running install_egg_info
Removing /usr/lib/python2.7/site-packages/npufunc_directory-0.0.0-py2.7.egg-info
Writing /usr/lib/python2.7/site-packages/npufunc_directory-0.0.0-py2.7.egg-info
running install_clib
customize UnixCCompiler

运行python setup.py build会产生:

$python setup.py build
running build
running config_cc
unifing config_cc,build commands --fcompiler options
running build_src
build_src
building extension "npufunc_directory.npufunc" sources
build_src: building npy-pkg config files
running build_ext
customize UnixCCompiler
customize UnixCCompiler using build_ext
running scons

如果我尝试导入模块,我得到:

Traceback (most recent call last):
  File "<pyshell#0>",line 1,in <module>
    import npufunc
ImportError: No module named npufunc

有谁知道如何使这项工作?

解决方法

根据 documentation“需要__init__.py文件才能使Python将目录视为包含包”. Numpy文档中的setup.py不会创建此文件,因此Python不会导入任何内容,因为它忽略了此目录.

解决方案:只需在/usr/local/lib/python2.7/dist-packages/npufunc_directory目录中添加一个空的__init__.py文件,例如使用sudo touch __init__.py然后尝试:

>>> from npufunc_directory import npufunc
>>> npufunc.logit(.5)
0.0

或者,将import npufunc添加到__init__.py,然后您可以执行以下操作:

>>> import npufunc_directory
>>> npufunc_directory.npufunc.logit(0.5)
0.0

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读