第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Python Vigenere Cipher Encrypt 方法未正確加密

Python Vigenere Cipher Encrypt 方法未正確加密

慕運(yùn)維8079593 2022-05-19 18:54:28
我的程序中的加密方法沒有正確加密。我以為我明白了為什么要使用調(diào)試模式;這是因?yàn)樗鼘卧~之間的空格讀取為必須加密的內(nèi)容。所以我嘗試輸入一條沒有空格的消息,但它仍然沒有正確輸出。我認(rèn)為問題在于帶有鍵的 if 語句。我嘗試將行注釋掉,更改語句,將 if 語句更改為 for 循環(huán),但它仍然不正確。def main():                                                vig_square = create_vig_square()                       message = input("Enter a multi-word message with punctuation: ")    input_key = input("Enter a single word key with no punctuation: ")     msg = message.lower()                                  key = input_key.lower()                                coded_msg = encrypt(msg, key, vig_square)              print("The encoded message is: ",coded_msg)            print("The decoded message is: ", msg)  def encrypt(msg,key,vig_square):                                           coded_msg = ""                                                         key_inc = 0                                                            for i in range(len(msg)):                                                  msg_char = msg[i]                                                      if key_inc == len(key)-1:                                                  key_inc = 0                                                        key_char = key[key_inc]                                                if msg_char.isalpha() and key_char.isalpha():                             row_index = get_row_index(key_char,vig_square)                         col_index = get_col_index(msg_char,vig_square)                         coded_msg = coded_msg+vig_square[row_index][col_index]              else:                                                                      coded_msg = coded_msg + " "                                        key_inc = key_inc+1                                                return coded_msg                                                   但是我的編碼信息是:epr iloyo sif plvqoh
查看完整描述

1 回答

?
茅侃侃

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超22個(gè)贊

你有兩個(gè)錯(cuò)誤:


首先,您不要使用密鑰中的所有字符。更改以下行:


if key_inc == len(key)-1:

    key_inc = 0


if key_inc == len(key):

    key_inc = 0

其次,即使您處理消息中的非字母字符(例如空格),您也會(huì)移動(dòng)鍵指針。僅當(dāng)您對字符進(jìn)行編碼時(shí)才這樣做,即進(jìn)行以下更改:


if msg_char.isalpha() and key_char.isalpha():

    ...

    key_inc = key_inc+1   # Move this line here

else:

    ...


查看完整回答
反對 回復(fù) 2022-05-19
  • 1 回答
  • 0 關(guān)注
  • 124 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號