-4

基本的に、メッセージ/テキストが与えられ、それを暗号化する必要がある疑似暗号化に関連するコードを記述する必要があります。プロセスには次のものが含まれます。

  1. 単語間のスペースを「X」に置き換えます。
  2. テキストを反転します。
  3. 合計文字数が 4 の倍数になるように、テキストの先頭と末尾を X でパディングします。
  4. テキストを 4 文字のブロックに分割します。

最初の 3 つのステップを実行するための作業コードを正常に作成できました。(質問の下部を参照してください)しかし、最後のステップで私はできません。たとえば、「heyhowareyou」というテキストが返された場合、最後のステップで「heyh owar eyou」を返す必要があります。したがって、すべて同じ文字列に分割する必要があります。誰でもこれで私を助けてもらえますか? ありがとうございます!

これまでに作成された、最初の 3 つのステップを評価するコード:

# Defining function to encrypt the message.
def encrypt(string, block_size):

    # Padding the begining and end of the text with 'X'.
    string_list = list(string)
    string_list.insert(0, 'X')
    string_list.append('X')
    string_list = ''.join(string_list)

    # Reversing the string.
    string_reversed = string_list[::-1]

    # Replacing any spaces with 'X'.
    string_reversed = string_reversed.replace(' ', 'X')

4番目のステップのコードを書いてみます:

    for index in range(len(string)):
        string_list_1 = list(string_reversed)
        string_list_1.insert(4, ' ')
        string_list_1 = ''.join(string_list_1)

    return string_list_
4

1 に答える 1

3
return [ string_reversed[i:i+4] for i in range(0, len(string_reversed), 4) ]
于 2012-04-09T09:53:06.187 に答える