Skip to content

Commit a7870ba

Browse files
Optimized: Code optimized in 'brute_force_caesar_cipher.py'
1 parent e9e7c96 commit a7870ba

File tree

1 file changed

+9
-15
lines changed

1 file changed

+9
-15
lines changed

ciphers/brute_force_caesar_cipher.py

+9-15
Original file line numberDiff line numberDiff line change
@@ -31,28 +31,22 @@ def decrypt(message: str) -> None:
3131
Decryption using Key #24: VOFGVWZ ROFXW
3232
Decryption using Key #25: UNEFUVY QNEWV
3333
"""
34-
for key in range(len(string.ascii_uppercase)):
35-
translated = ""
34+
for key in range(alphabet_len):
35+
translated = []
3636
for symbol in message:
37-
if symbol in string.ascii_uppercase:
38-
num = string.ascii_uppercase.find(symbol)
39-
num = num - key
40-
if num < 0:
41-
num = num + len(string.ascii_uppercase)
42-
translated = translated + string.ascii_uppercase[num]
37+
if symbol in alphabet:
38+
num = alphabet.find(symbol) - key
39+
translated.append(alphabet[num % alphabet_len])
4340
else:
44-
translated = translated + symbol
45-
print(f"Decryption using Key #{key}: {translated}")
41+
translated.append(symbol)
42+
print(f"Decryption using Key #{key}: {''.join(translated)}")
4643

4744

4845
def main() -> None:
49-
message = input("Encrypted message: ")
50-
message = message.upper()
46+
message = input("Encrypted message: ").upper()
5147
decrypt(message)
5248

53-
5449
if __name__ == "__main__":
5550
import doctest
56-
5751
doctest.testmod()
58-
main()
52+
main()

0 commit comments

Comments
 (0)