6

これが私の問題です:私はこれでコードを実行しています例。RaspberryPiにPython2.7と3をインストールしていますが、チェックとダブルチェックを行い、2.7でコードを実行しています。Pmw 2.0.0を3ではなく2.7でインストールしましたが、実行しようとすると、「ImportError:Nomodulenamedtkinter」エラーが発生します。私はいつもTkinterを使用しているので、通常は正常に動作します。検索を行って、「tkinter」ではなく「Tkinter」と呼んでいることを確認しました。したがって、Pmwに問題があると思います。また、トレースバックによって示されているようです(私の質問の下部に完全に投稿されています)。Pmwが小文字の「tkinter」を探している特定の場所を一生見つけることができず、これを回避する方法に迷っています。私はプラットフォームを切り替えることに熱心ではありません-これは仕事のためですので、これが修正できない場合を除いて、Tkinterに固執する必要があります。ああ、私はPythonにかなり慣れていないので、ここにいる誰かが簡単に見つけられるのは単純な問題であることを知りたいと思います。

sysをインポートします。印刷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
4

5 に答える 5

24

たぶん私はエラーを取り除く方法についてあなたを助けることができます。

ここに2つの考えがあります:

1)python 2.xxを使用し、python 3 pwmモジュールをインストールしました(TkinterはPython 2からtkinterに名前が変更されました)

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!
于 2013-01-29T17:40:12.027 に答える
2

別の回避策は次のとおりです。

try:
    import tkinter
except:
    import Tkinter as tkinter

このようにして、モジュールtkinterを常に利用可能にし、Pythonのバージョンに応じて、プログラムはtkinterまたはTkinterをロードします。

于 2015-12-27T14:45:42.920 に答える
1

matplotlib.pyplotCentOの(python 2.7+)でも同じ問題に直面していました。tkinterをインストールするだけで問題は解決しました。sudo yum install tkinter。これがお役に立てば幸いです。

于 2016-09-21T10:01:22.617 に答える
0

間違ったモジュールの使用をインポートしました:Tkinterをインポートします

于 2014-02-22T19:50:23.847 に答える
-1

Python3.4.0以降で実行されるスクリプトを書き直しました

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")
于 2016-03-25T15:42:59.773 に答える