MCPcopy Create free account
hub / github.com/subbarayudu-j/TheAlgorithms-Python / translateMessage

Function translateMessage

ciphers/vigenere_cipher.py:33–58  ·  view source on GitHub ↗
(key, message, mode)

Source from the content-addressed store, hash-verified

31 return translateMessage(key, message, 'decrypt')
32
33def translateMessage(key, message, mode):
34 translated = []
35 keyIndex = 0
36 key = key.upper()
37
38 for symbol in message:
39 num = LETTERS.find(symbol.upper())
40 if num != -1:
41 if mode == 'encrypt':
42 num += LETTERS.find(key[keyIndex])
43 elif mode == 'decrypt':
44 num -= LETTERS.find(key[keyIndex])
45
46 num %= len(LETTERS)
47
48 if symbol.isupper():
49 translated.append(LETTERS[num])
50 elif symbol.islower():
51 translated.append(LETTERS[num].lower())
52
53 keyIndex += 1
54 if keyIndex == len(key):
55 keyIndex = 0
56 else:
57 translated.append(symbol)
58 return ''.join(translated)
59
60if __name__ == '__main__':
61 main()

Callers 2

encryptMessageFunction · 0.70
decryptMessageFunction · 0.70

Calls 1

findMethod · 0.80

Tested by

no test coverage detected