mercredi 20 janvier 2021

decryprtion song with dictionary values

Hi I want to decryption the song down below, but when I replace some word and I keep moving forward in the dictionary keys, I lose my replacement.

for example, when 'O' turn to 'A' It ok but, when the code continues

the dictionary value in 'A' = 'U'. So I lose the correct replacement, and it giving me a wrong answer.

decryption_key = {
'O': 'A', 'D': 'B', 'F': 'C', 'I': 'D', 'H': 'E',
'G': 'F', 'L': 'G', 'C': 'H', 'K': 'I', 'Q': 'J',
'B': 'K', 'J': 'L', 'Z': 'M', 'V': 'N', 'S': 'O',
'R': 'P', 'M': 'Q', 'X': 'R', 'E': 'S', 'P': 'T',
'A': 'U', 'Y': 'V', 'W': 'W', 'T': 'X', 'U': 'Y',
'N': 'Z',
}

SONG = """
sc, kg pchxh'e svh pckvl k covl svps
pcop lhpe zh pcxsalc pch vklcp
k okv'p lsvvo is wcop k isv'p wovp ps
k'z lsvvo jkyh zu jkgh
eckvkvl jkbh o ikozsvi, xsjjkvl wkpc pch ikfh
epovikvl sv pch jhilh, k ecsw pch wkvi csw ps gju
wchv pch wsxji lhpe kv zu gofh
k eou, coyh o vkfh iou
coyh o vkfh iou
"""


SONG = SONG.upper()
for word, value in decryption_key.items():
   if word in SONG:
       SONG = SONG.replace(word, value)
   else:
        continue

print(SONG)

Aucun commentaire:

Enregistrer un commentaire