forked from ernestas-poskus/interactive-programming-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdictionaries_basic.py
More file actions
39 lines (31 loc) · 843 Bytes
/
dictionaries_basic.py
File metadata and controls
39 lines (31 loc) · 843 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Cipher
import simplegui
CIPHER = {'a': 'x', 'b': 'c', 'c': 'r', 'd': 'm', 'e': 'l'}
message = ""
# Encode button
def encode():
emsg = ""
for ch in message:
emsg += CIPHER[ch]
print message, "encodes to", emsg
# Decode button
def decode():
dmsg = ""
for ch in message:
for key, value in CIPHER.items():
if ch == value:
dmsg += key
print message, "decodes to", dmsg
# Update message input
def newmsg(msg):
global message
message = msg
label.set_text(msg)
# Create a frame and assign callbacks to event handlers
frame = simplegui.create_frame("Cipher", 2, 200, 200)
frame.add_input("Message:", newmsg, 200)
label = frame.add_label("", 200)
frame.add_button("Encode", encode)
frame.add_button("Decode", decode)
# Start the frame animation
frame.start()