无法从 Python3 导入 tkSnack

Posted

技术标签:

【中文标题】无法从 Python3 导入 tkSnack【英文标题】:Unable to import tkSnack from Python3 【发布时间】:2020-07-17 14:34:48 【问题描述】:

我正在尝试在 Debian 10 中从 Python3 导入 tkSnack。

我已经从 apt 安装了 tkSnack:

apt-get install python3-tksnack

无论如何,当尝试从 python3 导入 tkSnack 模块时:

ModuleNotFoundError: No module named 'tkSnack'

我也尝试过从pip安装tkSnack,但是出现如下错误信息:

ERROR: Command errored out with exit status 1:
     command: /home/cooper/anaconda3/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-x8rnbcp1/snack/setup.py'"'"'; __file__='"'"'/tmp/pip-install-x8rnbcp1/snack/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-install-x8rnbcp1/snack/pip-egg-info
         cwd: /tmp/pip-install-x8rnbcp1/snack/
    Complete output (6 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-x8rnbcp1/snack/setup.py", line 47
        print GCC_VERSION
                        ^
    SyntaxError: Missing parentheses in call to 'print'. Did you mean print(GCC_VERSION)?
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

奇怪的是,在python2.7中导入tkSnack时一切正常!

有人对此有任何想法吗?谢谢!

【问题讨论】:

【参考方案1】:

您的问题中有 2 个不同的问题,所以如果您问了 2 个不同的问题会更好。

    您使用系统包管理器apt-get 安装了该包,但尝试与本地 anaconda 环境一起使用。这不起作用:使用系统包管理器安装的包应该与系统安装的 python 一起使用。要将软件包安装到虚拟环境(包括 anaconda)中,请使用 condapip

    SyntaxError in print 表示代码仅适用于 Python2;在 Python3 中,print 成为一个函数并需要括号:print(GCC_VERSION)。您似乎安装了错误的仅 Python2 版本的包,并试图将其与 Python3 一起使用。卸载它并使用 Python3 的代码更新重新安装。

【讨论】:

以上是关于无法从 Python3 导入 tkSnack的主要内容,如果未能解决你的问题,请参考以下文章

ImportError:无法从“distutils”(/usr/lib/python3.8/distutils/__init__.py)导入名称“sysconfig”

ImportError:无法从“集合”(/usr/local/lib/python3.10/collections/__init__.py)导入名称“MutableMapping”

无法导入名称'ImageTK'-python 3.5

如何从 Qt:: 命名空间(Qt5,Python3.x)导入?

AWS Lambda Python3.7 函数 - numpy:无法导入名称“WinDLL”

ImportError:无法从“类型”导入名称“IntType”