从命令行运行Python文件不会加载模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从命令行运行Python文件不会加载模块相关的知识,希望对你有一定的参考价值。

我有一个包含以下模块的Python脚本:

from tkinter import *
from tkinter import ttk
from tkinter import filedialog

当我通过按F5在IDLE中运行代码时,脚本运行正常并启动我的应用程序。

但是,当我转到命令提示符并键入

python ScannerApp.py

我收到以下错误:

File "tkinterTest.py", line 1, in <module>
from tkinter import *
ImportError: No module named tkinter

我该如何摆脱这个错误?最终目标是将此脚本变为.exe。

有人认为python没有添加到Path下的环境变量中,它是作为自己的变量添加的。这会导致这个问题吗?

我的问题与Tkinter和tkinter之间的区别无关。我的问题是为什么当我通过命令行运行代码时出现错误。问题恰巧是我的环境变量python设置为运行python 2.7而不是必要的python 3.6(使用tkinter)。

答案

尝试添加此项以实现交叉兼容性,而不是之前的导入代码:(希望这是问题所在)

try:
    from tkinter import *
    from tkinter import ttk,filedialog
except:
    from Tkinter import *
    from Tkinter import ttk,filedialog
另一答案

我的问题的解决方案是将环境变量python更改为运行版本3.6而不是2.7。问题是交叉兼容性问题,我发现更改变量更容易,而不是试图让它尝试Tkinter和tkinter模块,具体取决于特定的版本。

另一答案

您的问题可能是python3不使用Tkinter(使用大写字母T)但是使用tkinter。那就是如果你当然使用pyhton3 ^^

https://stackoverflow.com/a/17843652/9368855

以上是关于从命令行运行Python文件不会加载模块的主要内容,如果未能解决你的问题,请参考以下文章

python命令行运行py文件找不到模块的解决办法

如何从命令行调试使用 python -m 运行的 Python 模块?

Python 3 不会从 Git Bash 命令行运行 [重复]

从命令行运行 python 要求我导入模块

在命令行中执行python datetime.py就会报找不到内置模块的错误,cannot import name 'datetime'

导入 python 模块以使脚本能够从命令行运行