【问题标题】:Python module installed and can be run in terminal but not in file已安装 Python 模块,可以在终端中运行,但不能在文件中运行
【发布时间】:2018-12-19 12:51:15
【问题描述】:

我的问题是我可以使用 shell 在终端中导入 python 模块,但是当我在文件中导入相同的模块时,我得到一个错误。 这是我收到的消息:

Traceback (most recent call last):
  File "/home/dalcoy/Desktop/Projects/Scripts/something.py", line 1, 
in <module>
import pygame
ImportError: No module named pygame
[Finished in 0.0s with exit code 1]
[shell_cmd: python -u 
"/home/dalcoy/Desktop/Projects/Scripts/something.py"]
[dir: /home/dalcoy/Desktop/Projects/Scripts]
[path:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games]

这是程序:

import pygame

有什么办法吗?

【问题讨论】:

  • 他们使用的是同一个python版本吗?

标签: python module linux-mint


【解决方案1】:

您必须先安装该模块才能在您的脚本中使用它。运行py -m pip install pygame 安装模块。然后它将在您的脚本中正常工作

【讨论】:

    【解决方案2】:

    检查您使用的是哪种 python 版本,因为 python shell 可能是 2.7,当您尝试从文件中将其作为脚本启动时,它可能会被不同的 python 版本解释,例如python3 没有安装这个模块。

    检查:

    # which python
    

    或

    # which python3 
    

    你也可以像这样调用一个文件来指定你想要的python版本:

    # python3 /path/to/file.py 
    

    或

    # python /path/to/file.py
    

    您还可以使用使文件成为可执行文件

    # chmod +x /path/to/file.py
    

    并将 hashbang 添加到文件的第一行:

    #!/usr/bin/env python3
    

    然后能够像这样运行 python 脚本:

    # ./my_script.py
    

    您可以在此处阅读使用 pip 管理不同版本的数据包:

    pip: dealing with multiple Python versions?

    【讨论】:

    • 非常感谢!!!原来我用的是python 3而不是python 2。谢谢大家帮我。
    • 不客气,您可以接受它作为帮助他人的答案:)
    猜你喜欢
    • 1970-01-01
    • 2021-09-12
    • 2016-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-11
    相关资源
    最近更新 更多