升级numpy失败,出现“权限被拒绝”错误。

7
我从http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy下载了预编译的numpy二进制文件,并尝试在Windows 7上升级我的当前numpy安装。
pip install --upgrade "numpy-1.10.4 vanilla-cp27-none-win32.whl"

我遇到了以下错误:

C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\Scripts\pip-script.py run on 04/01/16 13:20:05
Unpacking c:\users\jeroen\downloads\numpy-1.10.4 vanilla-cp27-none-win_amd64.whl
Installing collected packages: numpy
Cleaning up...
Exception:
Traceback (most recent call last):
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\lib\site-packages\pip\basecommand.py", line 122, in main
    status = self.run(options, args)
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\lib\site-packages\pip\commands\install.py", line 283, in run
    requirement_set.install(install_options, global_options, root=options.root_path)
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\lib\site-packages\pip\req.py", line 1435, in install
    requirement.install(install_options, global_options, *args, **kwargs)
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\lib\site-packages\pip\req.py", line 671, in install
    self.move_wheel_files(self.source_dir, root=root)
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\lib\site-packages\pip\req.py", line 901, in move_wheel_files
    pycompile=self.pycompile,
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\lib\site-packages\pip\wheel.py", line 215, in move_wheel_files
    clobber(source, lib_dir, True)
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\lib\site-packages\pip\wheel.py", line 209, in clobber
    shutil.copy2(srcfile, destfile)
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\App\appdata\canopy-1.6.2.3262.win-x86_64\lib\shutil.py", line 130, in copy2
    copyfile(src, dst)
  File "C:\Users\Jeroen\AppData\Local\Enthought\Canopy\App\appdata\canopy-1.6.2.3262.win-x86_64\lib\shutil.py", line 83, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: 'C:\\Users\\Jeroen\\AppData\\Local\\Enthought\\Canopy\\User\\Lib\\site-packages\\numpy\\core\\multiarray.pyd'

关于我系统上当前安装的numpy版本的更多信息:

Python 2.7.3 |EPD_free 7.3-2 (32-bit)| (default, Apr 12 2012, 14:30:37) [MSC v.1500 32 bit (Intel)] on win32
Type "credits", "demo" or "enthought" for more information.
>>> import numpy
>>> print numpy.__version__
1.7.1
>>> print numpy.__path__
['C:\\Python27\\lib\\site-packages\\numpy']

1
可能是管理员权限问题。在“开始搜索”框中键入cmd,然后按CTRL+SHIFT+ENTER。 - mibrl12
我不清楚在Windows上的情况,但是在Linux上,每次使用pip install命令都需要加上sudo,所以你可能需要以管理员身份运行cmd。 - n00dl3
1
我正在以管理员权限在cmd.exe中运行该命令。文件C:\Users\Jeroen\AppData\Local\Enthought\Canopy\User\Lib\site-packages\numpy\core\multiarray.pyd也没有写保护。 - BioGeek
我也有一个旧版本的numpy(numpy-1.9.2)。我已经尝试了你的更新方法,一切都正常运行了 :(唯一的区别是我的Python位于标准位置"c:\Python27\Lib\site-packages\numpy"。编辑:我没有注意到你的"print numpy.path",很抱歉不能帮助你。 - mibrl12
我遇到了同样的错误。 - astrojuanlu
6个回答

23

我也遇到了同样的报错信息,对我来说只需要在更新或重新安装numpy之前关闭eclipse即可。不确定为什么,但这可能会帮助其他遇到类似问题的人先确保所有相关程序都已关闭。


4
我也不得不关闭PyCharm。 - Matt

7

当我尝试将numpy更新到1.11时,遇到了类似的错误消息。

对我有效的方法是手动从Lib/site-packages/中删除numpy文件夹,然后使用普通的pip install命令(通过具有管理员权限的CMD窗口)安装whl文件。


5
  1. 在任务管理器中关闭“Python”进程
  2. 删除文件名为“numpy\core\multiarray.pyd”的文件(如果有)
  3. 按下CTRL+SHIFT开启命令提示符
  4. 现在尝试安装包,它将会成功安装。

谢谢!我只需要终止Python任务,不需要删除文件夹。 - Ozgar

1

我有相同的问题。通过以管理员身份访问命令模块来解决它。方法如下:

  1. 点击开始
  2. 点击所有程序
  3. 点击附件
  4. 右键单击命令提示符
  5. 以管理员身份运行

如果出现用户账户控制对话框,请选择这是您想要的操作。


0

我卸载了Enthought的CanopyEDP,然后我就能够通过pip升级numpy了。


0

只需关闭IDLE窗口,这对我有效


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接