开发者问题收集

无法在 python 3.8 上安装 pandas [关闭]

2019-10-17
29235

我无法在 python 3.8 上通过 pip 安装 pandas。

它给出了以下长错误:

PS C:\Users\Admin> pip install pandas
Collecting pandas
  Using cached https://files.pythonhosted.org/packages/07/cf/1b6917426a9a16fd79d56385d0d907f344188558337d6b81196792f857e9/pandas-0.25.1.tar.gz
    ERROR: Command errored out with exit status 1:
     command: 'c:\users\admin\appdata\local\programs\python\python38-32\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Admin\\AppData\\Local\\Temp\\pip-install-mjaqrdny\\pandas\\setup.py'"'"'; __file__='"'"'C:\\Users\\Admin\\AppData\\Local\\Temp\\pip-install-mjaqrdny\\pandas\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\Admin\AppData\Local\Temp\pip-install-mjaqrdny\pandas\pip-egg-info'
         cwd: C:\Users\Admin\AppData\Local\Temp\pip-install-mjaqrdny\pandas\
    Complete output (190 lines):
    Could not locate executable g77
    Could not locate executable f77
    Could not locate executable ifort
    Could not locate executable ifl
    Could not locate executable f90
    Could not locate executable DF
    Could not locate executable efl
    Could not locate executable gfortran
    Could not locate executable f95
    Could not locate executable g95
    Could not locate executable efort
    Could not locate executable efc
    Could not locate executable flang
    don't know how to compile Fortran code on platform 'nt'
    'svnversion' is not recognized as an internal or external command,
    operable program or batch file.
    non-existing path in 'numpy\\distutils': 'site.cfg'
    non-existing path in 'numpy\\random': 'src\\splitmix64\\splitmix.h'
    Running from numpy source directory.
    C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\setup.py:418: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
      run_build = parse_setuppy_commands()
    C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\system_info.py:690: UserWarning:
        Optimized (vendor) Blas libraries are not found.
        Falls back to netlib Blas library which has worse performance.
        A better performance should be easily gained by switching
        Blas library.
      self.calc_info()
    C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\system_info.py:690: UserWarning:
        Blas (http://www.netlib.org/blas/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [blas]) or by setting
        the BLAS environment variable.
      self.calc_info()
    C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\system_info.py:690: UserWarning:
        Blas (http://www.netlib.org/blas/) sources not found.
        Directories to search for the sources can be specified in the
        numpy/distutils/site.cfg file (section [blas_src]) or by setting
        the BLAS_SRC environment variable.
      self.calc_info()
    C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\system_info.py:1712: UserWarning:
        Lapack (http://www.netlib.org/lapack/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [lapack]) or by setting
        the LAPACK environment variable.
      if getattr(self, '_calc_info_{}'.format(lapack))():
    C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\system_info.py:1712: UserWarning:
        Lapack (http://www.netlib.org/lapack/) sources not found.
        Directories to search for the sources can be specified in the
        numpy/distutils/site.cfg file (section [lapack_src]) or by setting
        the LAPACK_SRC environment variable.
      if getattr(self, '_calc_info_{}'.format(lapack))():
    c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\dist.py:274: UserWarning: Unknown distribution option: 'define_macros'
      warnings.warn(msg)
    Traceback (most recent call last):
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\msvc.py", line 489, in _find_latest_available_vc_ver
        return self.find_available_vc_vers()[-1]
    IndexError: list index out of range

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\core.py", line 148, in setup
        dist.run_commands()
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\dist.py", line 985, in run_command
        cmd_obj.run()
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\command\bdist_egg.py", line 163, in run
        self.run_command("egg_info")
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\dist.py", line 985, in run_command
        cmd_obj.run()
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\command\egg_info.py", line 26, in run
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\dist.py", line 985, in run_command
        cmd_obj.run()
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\command\build_src.py", line 142, in run
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\command\build_src.py", line 153, in build_sources
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\command\build_src.py", line 286, in build_library_sources
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\command\build_src.py", line 369, in generate_sources
      File "numpy\core\setup.py", line 667, in get_mathlib_info
        "pyxfile": "_libs/tslibs/resolution",
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\command\config.py", line 241, in try_link
        self._check_compiler()
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\command\config.py", line 54, in _check_compiler
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\_msvccompiler.py", line 253, in initialize
        vc_env = _get_vc_env(plat_spec)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\msvc.py", line 185, in msvc14_get_vc_env
        return EnvironmentInfo(plat_spec, vc_min_ver=14.0).return_env()
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\msvc.py", line 843, in __init__
        self.si = SystemInfo(self.ri, vc_ver)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\msvc.py", line 485, in __init__
        self.vc_ver = vc_ver or self._find_latest_available_vc_ver()
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\msvc.py", line 492, in _find_latest_available_vc_ver
        raise distutils.errors.DistutilsPlatformError(err)
    distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 154, in save_modules
        yield saved
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 195, in setup_context
        yield
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 250, in run_setup
        _execfile(setup_script, ns)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 45, in _execfile
        exec(code, globals, locals)
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\setup.py", line 443, in <module>
        cmdclass["cython"] = CythonCommand
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\setup.py", line 435, in setup_package
        pass
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\core.py", line 171, in setup
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\core.py", line 163, in setup
        raise SystemExit("error: " + str(msg))
    SystemExit: error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\command\easy_install.py", line 1144, in run_setup
        run_setup(setup_script, args)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 253, in run_setup
        raise
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\contextlib.py", line 131, in __exit__
        self.gen.throw(type, value, traceback)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 195, in setup_context
        yield
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\contextlib.py", line 131, in __exit__
        self.gen.throw(type, value, traceback)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 166, in save_modules
        saved_exc.resume()
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 141, in resume
        six.reraise(type, exc, self._tb)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\_vendor\six.py", line 685, in reraise
        raise value.with_traceback(tb)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 154, in save_modules
        yield saved
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 195, in setup_context
        yield
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 250, in run_setup
        _execfile(setup_script, ns)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\sandbox.py", line 45, in _execfile
        exec(code, globals, locals)
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\setup.py", line 443, in <module>
        cmdclass["cython"] = CythonCommand
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\setup.py", line 435, in setup_package
        pass
      File "C:\Users\Admin\AppData\Local\Temp\easy_install-w6soklp7\numpy-1.17.2\numpy\distutils\core.py", line 171, in setup
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\distutils\core.py", line 163, in setup
        raise SystemExit("error: " + str(msg))
    SystemExit: error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Admin\AppData\Local\Temp\pip-install-mjaqrdny\pandas\setup.py", line 807, in <module>
        setup(
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\__init__.py", line 144, in setup
        _install_setup_requires(attrs)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\__init__.py", line 139, in _install_setup_requires
        dist.fetch_build_eggs(dist.setup_requires)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\dist.py", line 716, in fetch_build_eggs
        resolved_dists = pkg_resources.working_set.resolve(
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\pkg_resources\__init__.py", line 780, in resolve
        dist = best[req.key] = env.best_match(
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\pkg_resources\__init__.py", line 1065, in best_match
        return self.obtain(req, installer)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\pkg_resources\__init__.py", line 1077, in obtain
        return installer(requirement)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\dist.py", line 786, in fetch_build_egg
        return cmd.easy_install(req)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\command\easy_install.py", line 679, in easy_install
        return self.install_item(spec, dist.location, tmpdir, deps)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\command\easy_install.py", line 705, in install_item
        dists = self.install_eggs(spec, download, tmpdir)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\command\easy_install.py", line 890, in install_eggs
        return self.build_and_install(setup_script, setup_base)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\command\easy_install.py", line 1158, in build_and_install
        self.run_setup(setup_script, setup_base, args)
      File "c:\users\admin\appdata\local\programs\python\python38-32\lib\site-packages\setuptools\command\easy_install.py", line 1146, in run_setup
        raise DistutilsError("Setup script exited with %s" % (v.args[0],))
    distutils.errors.DistutilsError: Setup script exited with error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
3个回答

请尝试以下任意代码进行安装。

easy_install pandas

pip install --only-binary :all: pandas

希望以上代码能帮助您解决问题。

Moon
2019-10-17

不幸的是,截至 2019 年 10 月 18 日,它无法正常工作。我在 LinkedIn 上收到了这样的回复:

您需要安装 cython 来构建原生位,直到发布带有原生位的轮子。

Checked under 'docker run --rm -i -t python:3.8-slim bash'
'pip install pandas' failed with the clear message
   Exception: Cython-generated file 'pandas/_libs/algos.c' not found.
                   Cython is required to compile pandas from a development branch.
                   Please install Cython or download a release package of pandas.
apt-get update && apt-get -y install cython && pip install pandas is still chugging along compiling.
And that failed with a missing 'cc1plus'... so 'apt-get -y install g++-8' and chugging again.
And much later it can't find g++.
'apt-get -y install g++'
You're responsible for chasing build environments on your own when you choose bleeding edge open source software.
'pip install --no-binary :all: ...' is a great training exercise.  And tools like docker simplify creating a pristine environment to double check your assumptions.  (edited)
Nic F
2019-10-18

我的安装似乎在Windows 10上工作 - 我必须确保车轮在路径上,切换到Python 3.8目录并运行 Python -M PIP安装 - 升级PIP setuptools轮 然后我

Adam Safier
2020-04-06