Python 3.x 全新安装Python3.9.0或任何其他方式来修复名为'_ctypes';错误

Python 3.x 全新安装Python3.9.0或任何其他方式来修复名为'_ctypes';错误,python-3.x,ctypes,python-venv,ubuntu-20.04,reinstall,Python 3.x,Ctypes,Python Venv,Ubuntu 20.04,Reinstall,自从安装到Python3.9.0之后,我无法在我的virtualenv上安装任何库。例如,当尝试通过pip安装库时,我得到: $ pip3 install -r requirements.txt Collecting anaconda==0.0.1.1 Using cached anaconda-0.0.1.1.tar.gz (726 bytes) ERROR: Command errored out with exit status 1: command: /home/j

自从安装到Python3.9.0之后,我无法在我的virtualenv上安装任何库。例如,当尝试通过pip安装库时,我得到:

$ pip3 install -r requirements.txt
Collecting anaconda==0.0.1.1
  Using cached anaconda-0.0.1.1.tar.gz (726 bytes)
    ERROR: Command errored out with exit status 1:
     command: /home/jack/dev/37/env/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-01fhtisu/anaconda/setup.py'"'"'; __file__='"'"'/tmp/pip-install-01fhtisu/anaconda/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 /tmp/pip-pip-egg-info-b71dl332
         cwd: /tmp/pip-install-01fhtisu/anaconda/
    Complete output (11 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/home/jack/dev/37/env/lib/python3.9/site-packages/setuptools/__init__.py", line 23, in <module>
        from setuptools.dist import Distribution
      File "/home/jack/dev/37/env/lib/python3.9/site-packages/setuptools/dist.py", line 34, in <module>
        from setuptools import windows_support
      File "/home/jack/dev/37/env/lib/python3.9/site-packages/setuptools/windows_support.py", line 2, in <module>
        import ctypes
      File "/usr/local/lib/python3.9/ctypes/__init__.py", line 8, in <module>
        from _ctypes import Union, Structure, Array
    ModuleNotFoundError: No module named '_ctypes'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
$pip3安装-r requirements.txt
收集蟒蛇==0.0.1.1
使用缓存的anaconda-0.0.1.1.tar.gz(726字节)
错误:命令出错,退出状态为1:
命令:/home/jack/dev/37/env/bin/python3-c'import sys、setuptools、tokenize;sys.argv[0]=“”/tmp/pip-install-01fhtisu/anaconda/setup.py“”__文件“\uuu=””/tmp/pip-install-01fhtisu/anaconda/setup.py“”;f=getattr(标记化,“'open'”,open)(\uuuuu文件);code=f.read().replace(“\r\n”“”、“\n”“”);f、 close();exec(编译(代码,“'exec'”)“egg\u info--egg base/tmp/pip-pip-egg-info-b71dl332
cwd:/tmp/pip-install-01fhtisu/anaconda/
完整输出(11行):
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/home/jack/dev/37/env/lib/python3.9/site-packages/setuptools/_-init__.py”,第23行,在
从setuptools.dist导入分发
文件“/home/jack/dev/37/env/lib/python3.9/site packages/setuptools/dist.py”,第34行,在
从setuptools导入windows\u支持
文件“/home/jack/dev/37/env/lib/python3.9/site packages/setuptools/windows_support.py”,第2行,在
导入ctypes
文件“/usr/local/lib/python3.9/ctypes/_init__.py”,第8行,在
从类型导入联合、结构、数组
ModuleNotFoundError:没有名为“\u ctypes”的模块
----------------------------------------
错误:命令出错,退出状态为1:python setup.py egg_info检查日志以获得完整的命令输出。
我在一些地方看到,应该通过安装
libffi dev
然后重新安装python来解决这个问题。例如:

做这件事最好的方法是什么?我在Ubuntu20.04上运行
python-V
,在virtualenv
python3.9.0
之外运行

为了防止将来发生这种情况,通常建议只在venv中的python(或任何其他语言)上安装较新版本,而不在系统本身上安装


非常感谢。

您是如何安装Python的?是否存在任何错误/警告?安装LibFFI时不需要它,仅在构建LibFFI时需要。此外,该路径还提供了其他建议:/home/jack/dev/37/env/bin/python3。我在venv中对其进行了升级。我备份了所有重要的文件,然后重新安装了一个新的Ununtu!到目前为止运作良好。