-1

Python で非常にラフな Caesar Cipher を作成していますが、単純なメッセージでは問題なく動作しますが、完全なアルファベットを入力すると、16 行目にインデックス エラーがあるというエラーが表示されます: 文字列インデックスが範囲外です。誰が何が間違っているかを知るのを手伝ってくれますか? これが私のコードです:

    abc = "ABCDEFGHIJKLMNOPQRTUVWXYZ"
    m = str(input("Message: "))
    m = m + "~"
    m_t = m.index("~")
    o = int(input("Offset: "))
    e_m = "Encrypted Message: "
    for loop_counter in range(m_t):
        c = m[loop_counter]
        if c in abc:
            p = abc.index(c)
            p = p + o
            if 25 < p:
                p = p - 26
            elif 0 > p:
                p = p + 26
            n_c = abc[p]
            e_m = e_m + n_c
        else:
            e_m = e_m + c

    print(e_m)
4

1 に答える 1

4

「abc」文字列の長さは 25 です。「S」の文字が抜けています...

于 2015-05-03T14:28:26.217 に答える