这是我的问题:我在this示例中运行代码。我在我的RaspberryPi上安装了Python 2.7和3,但是我已经检查并仔细检查了,我在2.7中运行代码。我已经在2.7下安装了Pmw 2.0.0,而不是3,但是当我尝试运行时,我得到了“ImportError:No module named tkinter”错误。我一直使用Tkinter,所以它通常工作正常,我已经做了一个搜索来验证我肯定称之为“Tkinter”,而不是“tkinter”,所以我认为它必须是Pmw的一个问题,也似乎由追溯表明(在我的问题的底部完整张贴)。我不能为我的生活找到一个特定的地方,Pmw正在寻找小写的“tkinter”,我不知道如何解决这个问题。我不急于切换平台 - 这是为了工作,所以除非这是不可修复的,否则我需要坚持使用Tkinter。哦,我对Python很陌生,所以我很想知道这是一个简单的问题,这里的人很容易发现。
import sys; print sys.path给了我:
['/home/pi/Desktop', '/home/pi', '/usr/bin', '/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/pymodules/python2.7']
完整的追溯是:
Traceback (most recent call last):
File "/home/pi/Desktop/LinkedMenusSample.py", line 151, in <module>
Pmw.initialise(root)
File "/usr/local/lib/python2.7/dist-packages/Pmw/Pmw_2_0_0/lib/PmwLoader.py", line 131, in __getattr__
self._initialise()
File "/usr/local/lib/python2.7/dist-packages/Pmw/Pmw_2_0_0/lib/PmwLoader.py", line 89, in _initialise
raise ImportError(msg)
ImportError: No module named tkinter
答案 0 :(得分:26)
也许我可以帮助您解决错误问题。
这里有两个想法:
1)你使用python 2.xx并安装了python 3 pwm模块(Tkinter从Python 2重命名为tkinter到3)
2)在导入之前执行以下操作并希望它有所帮助:
#import tkinter
#Traceback (most recent call last):
# File "<pyshell#11>", line 1, in <module>
# import tkinter
#ImportError: No module named tkinter
import sys, Tkinter
sys.modules['tkinter'] = Tkinter # put the module where python looks first for modules
#import tkinter # now works!
答案 1 :(得分:2)
另一种解决方法如下:
try:
import tkinter
except:
import Tkinter as tkinter
这样你就可以使用模块tkinter,并且根据你的程序加载tkinter或Tkinter的Python版本。
答案 2 :(得分:1)
我的CentOs中遇到matplotlib.pyplot
(python 2.7+)的同样问题。我只是安装了tkinter解决了这个问题。 sudo yum install tkinter
。希望这可以帮到你。
答案 3 :(得分:0)
您导入了错误的模块使用: 导入Tkinter
答案 4 :(得分:-1)
def add():
print ("Enter the two numbers to Add")
A=int(input("Enter A: "))
B=int(input("Enter B: "))
return A + B
def sub():
print ("Enter the two numbers to Subtract")
A=int(input("Enter A: "))
B=int(input("Enter B: "))
return A - B
def mul():
print ("Enter the two numbers to Multiply")
A=int(input("Enter A: "))
B=int(input("Enter B: "))
return A * B
def div():
print ("Enter the two number to Divide")
A=float(input("Enter A: "))
B=float(input("Enter B: "))
return A / B
print ("1: ADDITION")
print ("2: SUBTRACTION")
print ("3: MULTIPLICATION")
print ("4: DIVISION")
print ("0: QUIT")
while True:
CHOICE = int(input("ENTER THE CORRESPONDING NUMBER FOR CALCULATION "))
if CHOICE == 1:
print ('ADDING TWO NUMBERS:')
print (add())
elif CHOICE == 2:
print ('SUBTRACTING TWO NUMBERS')
print (sub())
elif CHOICE == 3:
print ('MULTIPLYING TWO NUMBERS')
print (mul())
elif CHOICE == 4:
print ("DIVIDEING TWO NUMBERS")
print (div())
elif CHOICE == 0:
exit()
else:
print ("The value Enter value from 1-4")