我必须扩展一个古老的学生做的代码。在安装了所有需要的库后,我终于尝试了代码,得到了这个错误:
$ ./main
Traceback (most recent call last):
File "/usr/lib/python3.4/tkinter/__init__.py", line 39, in <module>
import _tkinter
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2237, in _find_and_load
return _find_and_load_unlocked(name, import_)
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2226, in _find_and_load_unlocked
module = _SpecMethods(spec)._load_unlocked()
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 1191, in _load_unlocked
return self._load_backward_compatible()
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 1161, in _load_backward_compatible
spec.loader.load_module(spec.name)
File "ExtensionLoader__tkinter.py", line 22, in <module>
File "ExtensionLoader__tkinter.py", line 3, in __bootstrap__
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2237, in _find_and_load
return _find_and_load_unlocked(name, import_)
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2224, in _find_and_load_unlocked
raise ImportError(_ERR_MSG.format(name), name=name)
ImportError: No module named 'imp'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.4/dist-packages/cx_Freeze-4.3.4-py3.4-linux-x86_64.egg/cx_Freeze/initscripts/Console.py", line 27, in <module>
File "main.py", line 13, in <module>
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2237, in _find_and_load
return _find_and_load_unlocked(name, import_)
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2226, in _find_and_load_unlocked
module = _SpecMethods(spec)._load_unlocked()
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 1191, in _load_unlocked
return self._load_backward_compatible()
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 1161, in _load_backward_compatible
spec.loader.load_module(spec.name)
File "/home/aitech/Scrivania/folder_test/GUI_videoServer/mainFrame.py", line 4, in <module>
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2237, in _find_and_load
return _find_and_load_unlocked(name, import_)
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 2226, in _find_and_load_unlocked
module = _SpecMethods(spec)._load_unlocked()
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 1191, in _load_unlocked
return self._load_backward_compatible()
File "/usr/lib/python3.4/importlib/_bootstrap.py", line 1161, in _load_backward_compatible
spec.loader.load_module(spec.name)
File "/usr/lib/python3.4/tkinter/__init__.py", line 41, in <module>
raise ImportError(str(msg) + ', please install the python3-tk package')
ImportError: No module named 'imp', please install the python3-tk package
字符串
我不认为代码中有错误,因为他已经被使用了。我很好地安装了python3-tk包,我可以在命令代码中使用它。在项目的setting.py中,已经有一行'django_admin_bootstrapped'在'django.contrib.admin'之前,在pathLED_APPS =()
我在Ubuntu上:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
型
我真的迷路了,如果有人能帮助我,先谢谢你。
1条答案
按热度按时间iqih9akk1#
我不知道你是否和我有同样的问题,但我的问题是_tkinter在导入'imp'时没有使用python的“import”接口,所以它没有被打包到py2exe的可执行文件中。我通过在setup.py中添加
options = {"includes": ["imp"]}
到我的安装函数来解决这个问题。如果这不是你的问题,我能提供的唯一建议是,imp.py应该在你的Python安装中的Lib文件夹的基本目录中,你应该重新安装Python来修复它。