/ / Comment exécuter un script python à partir de tkinter - python, tkinter

Comment exécuter un script python depuis tkinter - python, tkinter

J'essaie actuellement de créer un gui pour une application que je crée pour mon ami. Il code une chaîne. Ce n'est cependant pas pertinent. J'ai besoin d'utiliser tkinter pour faire en sorte que si vous appuyez sur un bouton, il exécute ce code:

print "Welcome to the encoder"
print "[DO NOT USE CAPITAL LETTERS]"
# define the dictionary
encoder = {"a":"1", "b":"2", "c":"3", "d":"4", "e":"5", "f":"6",
"g":"7", "h":"8", "i":"9", "j":"10", "k":"11", "l":"12", "m":"13",
"n":"14", "o":"15", "p":"16", "q":"17", "r":"18", "s":"19", "t":"20",
"u":"21", "v":"22", "w":"23", "x":"24", "y":"25", "z":"26"}

# take your input
Letter1 = raw_input ("Please input the first letter of the word: ")
Letter2 = raw_input ("Please input the second letter of the word: ")
Letter3 = raw_input ("Please input the third letter of the word: ")
Letter4 = raw_input ("Please input the fourth letter of the word: ")
Letter5 = raw_input ("Please input the fifth letter of the word: ")
Letter6 = raw_input ("Please input the sixth letter of the word: ")
Letter7 = raw_input ("Please input the seventh letter of the word: ")
Letter8 = raw_input ("Please input the eigth letter of the word: ")
Letter9 = raw_input ("Please input the ninth letter of the word: ")
Letter10 = raw_input ("Please input the tenth letter of the word: ")
Letter11 = raw_input ("Please input the eleventh letter of the word: ")
Letter12 = raw_input ("Please input the twelvth letter of the word: ")

# print out the encoded version
print encoder[Letter3] + " " + encoder[Letter2] + " " + encoder[Letter1] + "  " + encoder[Letter6] + " " + encoder[Letter5] + " " + encoder[Letter4] + "  " + encoder[Letter9] + " " + encoder[Letter8] + " " + encoder[Letter7] + "  " + encoder[Letter12] + " " + encoder[Letter11] + " " + encoder[Letter10]

Réponses:

0 pour la réponse № 1

Tu devrais écrire une fonction

encoder = {"a":"1", "b":"2", "c":"3", "d":"4", "e":"5", "f":"6",
"g":"7", "h":"8", "i":"9", "j":"10", "k":"11", "l":"12", "m":"13",
"n":"14", "o":"15", "p":"16", "q":"17", "r":"18", "s":"19", "t":"20",
"u":"21", "v":"22", "w":"23", "x":"24", "y":"25", "z":"26"}

def encode(letters):
return " ".join(str(encoder.get(c, "")) for c in letters)

Ensuite, quel que soit le code tkinter que vous écrivez, appelez cette fonction avec une liste de lettres ou une chaîne en minuscule.

Prendre les entrées de l'utilisateur dans Tkinter

Pour définir une étiquette tkinter, voir cette réponse