我正在尝试测试 tensorflow 对象检测。因为 tensorflow 需要 python3.6,而我的系统默认安装了 python3.7.1,所以我从源代码构建了 python3.6.7。然后我用 python3.6.7 创建了一个 venv 并安装了我所有的依赖项,但是在尝试导入 matplotlib 时我最终得到了一个错误并得到了错误:
File "detection.py", line 9, in <module>
from matplotlib import pyplot as plt
File "/home/johnmadden/repos/tfobj/lib/python3.6/site-packages/matplotlib/pyplot.py", line 2374, in <module>
switch_backend(rcParams["backend"])
File "/home/johnmadden/repos/tfobj/lib/python3.6/site-packages/matplotlib/pyplot.py", line 207, in switch_backend
backend_mod = importlib.import_module(backend_name)
File "/home/johnmadden/repos/tfobj/lib/python3.6/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/home/johnmadden/repos/tfobj/lib/python3.6/site-packages/matplotlib/backends/backend_tkagg.py", line 1, in <module>
from . import _backend_tk
File "/home/johnmadden/repos/tfobj/lib/python3.6/site-packages/matplotlib/backends/_backend_tk.py", line 5, in <module>
import tkinter as Tk
File "/usr/local/lib/python3.6/tkinter/__init__.py", line 36, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
上网查了下发现需要安装tk
pacman -S tk
我仍然得到同样的错误,但是当我转到 python3.7.1 时它导入成功。我认为它正在尝试为 python3.7.1 而不是 python3.6.7 安装它。我知道在 ubuntu 上人们可以做
sudo apt-get install python3-tk
这将如何在 arch 上完成?
最佳答案
发现了我的问题,我在安装 tk 之前创建了 venv,所以它仍然没有找到它。我刚刚重新创建了虚拟环境。
关于python - python3.6 上的 tkinter 在 arch 上有多个版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53968359/