Python 为什么;来自tkinter import*”;不起作用,但;来自Tkinter import*”;作品

Python 为什么;来自tkinter import*”;不起作用,但;来自Tkinter import*”;作品,python,python-2.7,tkinter,Python,Python 2.7,Tkinter,我的问题是,当我编写import tkinter(带有小t)时,它会显示导入错误。当我将其大写为“T”时:import Tkinter可以工作,但弹出文件对话框错误! 请帮忙! 我在Windows7 64位上运行Python2.7.8 我的错误(当我用大写字母T表示Tkinter时) 回溯(最近一次呼叫最后一次): 文件“C:\Users\Ashim\Desktop\plotlib.py”,第5行,在 从Tkinter.filedialog导入askopenfilename ImportErro

我的问题是,当我编写
import tkinter
(带有小t)时,它会显示导入错误。当我将其大写为“T”时:
import Tkinter
可以工作,但弹出文件对话框错误! 请帮忙! 我在Windows7 64位上运行Python2.7.8

我的错误(当我用大写字母T表示Tkinter时)

回溯(最近一次呼叫最后一次):
文件“C:\Users\Ashim\Desktop\plotlib.py”,第5行,在
从Tkinter.filedialog导入askopenfilename
ImportError:没有名为filedialog的模块

我不知道您看到的是什么对话框,也许您可以提供更多信息


大写之所以重要,是因为python区分大小写。这意味着大写字母和小写字母彼此不同。因此,“tkinter”与“tkinter”不同。如果字符串不完全匹配,则它们不相同。

在python2中,该模块称为tkinter。在python3中,它被称为tkinter。别问我为什么会这样


另外,当您尝试使用*导入时,某些类不会被导入。在使用tkinter时,我通常在Python2.x上从tkinter导入*

,tkinter称为tkinter,因此必须使用import tkinter导入它。在Python3.x上,采用小写

因此,针对2.x系列的项目将使用Tkinter,而针对3.x系列的项目将使用小写,针对两个python版本的项目将检查版本并导入相应的库

编辑:
tkinter.filedialog
特定于python3


在Python2.x上,导入内容应为
import tkFileDialog

,非常感谢您的澄清;我想到了这一点,但不确定……突然出现的错误是。。。。回溯(最后一次调用):文件“C:\Users\Ashim\Desktop\plotlib.py”,第5行,从Tkinter.filedialog导入为KopenFileName导入错误:没有名为filedialog的模块我认为filedialog是Python 3的东西,如果您试图使用Tkinter和filedialog,您可能需要使用Python 3。非常感谢您的澄清!这很有帮助!因此,如果我计划对文件输入而不是原始输入进行拖放,那么我在python 2.7.8上的替代方案是什么?你能给我一个链接到教程或之前回答的线程@AshimPaudel抱歉,我实际上不做太多GUI的东西,所以我实际上没有任何建议给你我打赌Haleemur会帮你通过。如果你接受了他的答案,你可能也会想投票给他!感谢您的精彩澄清!你当然应该得到绿色支票!我已经更新了我的问题@AshimPaudel,感谢您发布错误消息,请查看更新的答案以澄清您的问题。对于这个项目,您最好只使用Python3.x,因为您的代码似乎是针对3系列的,而不是针对这两个系列设计的。因此,如果我计划对文件输入而不是原始输入进行拖放,那么我在Python2.7.8上的替代方案是什么?你能给我一个链接到教程或之前回答的线程!谢谢你的信息!我被Python2和Python3搞糊涂了!别担心,我不会问你为什么????
Traceback (most recent call last):
  File "C:\Users\Ashim\Desktop\plotlib.py", line 5, in <module>
    from Tkinter.filedialog import askopenfilename
ImportError: No module named filedialog