2014-10-18 50 views
0

我有一個程序,它使用一個不斷變化的鍵隨機編碼文本。用戶也可以選擇解碼文本。如何將2個變量存儲在一個列表中?

基本上我想要做的是有一個列表包含已使用的密鑰和編碼文本是什麼。例如,如果我使用單詞'test'可以說它返回BGMB,該單詞的關鍵是EIDTGRVHFNPSYJLKCWMBUXOZQA。所以在列表中我會有keyList = [(EIDTGRVHFNPSYJLKCWMBUXOZQA, BGMB)],並且只要用戶編碼單詞,列表就會繼續增長。我確信我正確地完成了這部分,keyList.append((key, encodeText))

我遇到的問題是我不知道該從這裏做什麼。我可以繼續編碼,並繼續將其添加到列表中。我只是不確定如何訪問解碼函數中的列表。我打算做的是比較用戶輸入的字符串,他們想要解碼並查看它是否在列表中,如果是,那麼程序將使用該字的關鍵字併發送解碼後的字符串。

任何幫助你是美好的。提前致謝!

快速編輯:這裏是編碼和解碼方法,是否可以幫助任何人

def encode(text): 
    global key 
    key = ''.join(random.sample(key, len(key))) 
    switch = alpha.maketrans(alpha + alpha.lower(), key*2) 
    encodeText = text.translate(switch) 
    keyList.append((key, encodeText)) 
    print(keyList) 
    return(encodeText) 

def decode(text): 
    print(keyList) 
    switch = alpha.maketrans(key + key.lower(), alpha + alpha.lower()) 
    decodeText = text.translate(switch) 
    return(decodeText) 

的打印是他們的,所以我可以看到什麼是在每個點發生。

回答

3

我認爲你應該使用dict。既然你想通過編碼文本訪問加密密鑰,encodeText應該是你的字典密鑰。

keydict[ecodeText] = key

相關問題