nutship nutship -4 years ago 290
Python Question

No module named Tkinter

I have a small script in python2.7 that I want to convert into Windows executable. I use

for this.

The script:

import sys
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

def get_inputs():
coor = raw_input(">>>top x left: ").replace(" ", "")
top, left = coor.split("x")
top = int(top.strip())
left = int(left.strip())
return top, left

def plot_location(top, left):
img= mpimg.imread('nbahalfcourt.jpg')
plt.scatter(left, top)

def main():
top, left = get_inputs()
plot_location(top, left)

if __name__ == '__main__':

print "Input top x left coordinates (no space) eg: 44x232"

run = True
while run:

Basically, the script just plots a point on a grid.

The converting process finishes successfully. When I run the .exe however I've got the
(see below) even though I have no reference to

enter image description here

What could went wrong here?

Answer Source

I have a feeling that matplotlib uses the Tkinter module internally, but imports it in a non-standard way. Then pyinstaller doesn't notice Tkinter is needed, and subsequently doesn't bundle it into the executable.

Try explicitly putting import Tkinter at the top of your script.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download