The secret message is:
KOALA

Row by row
| Row | Bulbs | Add the ‘on’ numbers | Character |
|---|---|---|---|
| 1 | 01011 | 8 + 2 + 1 = 11 | K |
| 2 | 01111 | 8 + 4 + 2 + 1 = 15 | O |
| 3 | 00001 | 1 = 1 | A |
| 4 | 01100 | 8 + 4 = 12 | L |
| 5 | 00001 | 1 = 1 | A |
Crack it with Python
Python can do the adding for you. int(code, 2) reads a string of 1s and 0s as a binary number. Then the program finds that letter in the alphabet. It takes away 1 because Python counts the letters from 0.
secret = [
"01011",
"01111",
"00001",
"01100",
"00001",
]
letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
message = ""
for code in secret:
number = int(code, 2)
message = message + letters[number - 1]
print(message)
When you run it, it prints:
KOALA
<strong>Beep says:</strong> Want to write your own secret message? Turn it around: ord() turns a character into its number, and format(number, “08b”) writes the number as 8 binary digits. Beep boop!