メッセージ内の各文字を、アルファベットのさらに k 番目の位置の文字に置き換えてエンコードするにはどうすればよいですか? たとえば、k=3 の場合、「a」は「d」に置き換えられ、「b」は「e」に置き換えられます。アルファベットがぐるぐる回ります。「w」は「z」に、「x」は「a」に、「y」は「b」に、「z」は「c」に置き換えられます。エンコードされるメッセージは空ではなく、小文字とスペースのみが含まれていると想定できます。スペースはスペースとしてエンコードされます。これは私が試したものですが、必要なように機能しません。スキップする文字数を入力できるようにする必要があります。
def encode(string,keyletter):
alpha="abcdefghijklmnopqrstuvwxyz"
secret = ""
for letter in string:
index = alpha.find(letter)
secret = secret+keyletter[index]
print secret