I want to have a text box and a button in my GUI and on clicking the button, it should take the text and store it in a variable for some other file and run the other file.
I want the user to enter an access token and the gui should save it in the global variable access_token of utilities.py But when importing the function for setting the access token only, the file runs which I don't want until the button is clicked. So, effectively the file is running twice.
This is my gui.py
from Tkinter import * import Tkinter as tk from utilities import setAccessToken root = tk.Tk() def callback(): setAccessToken(E1.get()) execfile('utilities.py') E1 = Entry(root,bd = 5, width = 10) E1.pack() #similarly other GUI stuff with command = callback() mainloop()
This is my utilities.py
access_token = "" def setAccessToken(token): global access_token access_token = token print 'Running Utilities : access_token =', access_token
My expected output is :
Running Utilities : access_token = my access token
But I am getting the output twice, that is :
Running Utilities : access_token = Running Utilities : access_token = my access token
Is there anyway in which I can stop the file utilities.py from running when I am importing it.