-2

だから私はこのコードをpython 3.3に持っています。それはシーザーサイファーでテキストを暗号化します。私が知る必要があるのは、送信者もそれを読めるように、オリジナルから元に戻すスクリプトを作成する方法です。

message = input("Input: ")
key = 11
coded_message = ""

for ch in message:
    code_val  = ord(ch) + key
    if ch.isalpha():
        if code_val > ord('z'):
            code_val -= ord('z') - ord('a')
        coded_message = coded_message + chr(code_val)
    else:
        coded_message = coded_message + ch
# print ("Input: " + message)
print ("Output: " + coded_message)

もう 1 つ、入力と出力に使用される 2 つの入力フィールドを備えた tkinter メッセージ ボックスを配置する予定です。1 つのフィールドは変換したいものを入力するために使用し、もう 1 つのフィールドは暗号化された後のテキストの外観を示すために使用する必要があります。ボタンは暗号化を開始する必要があります。コードは次のとおりです。

import sys
from tkinter import *
def mHello():
    mLabel = Label(mGui,text = input("Hello World"))
    mLabel.grid(row=3, column=0,)

mGui = Tk()
ment = StringVar()
mGui.geometry("450x450+250+250")
mGui.title("My TKinter")
# input label
mLabel = Label(mGui,text = "Input",)
mLabel.grid(row=1,column=0,)
# output label
mLabeltwo = Label(mGui,text = "Input",)
mLabeltwo.grid(row=2,column=0,)
# convert button
mButton = Button(text = "Convert",command = mHello)
mButton.grid(row=3,column=0)
# input entry
mEntry = Entry(mGui,textvariable=ment)
mEntry.grid(row=1,column=1)
# output entry
mEntryTwo = Entry(mGui,textvariable=ment)
mEntryTwo.grid(row=2,column=1)





mGui.mainloop()

ところで、私はまだ 15 歳で、Python を学習して 2 日目です。いくつかのコード スニペットを提供してくれたこのフォーラムの情報源に感謝します。

4

1 に答える 1

-2

私が何か他のことを言う前に、あなたは、鉱山のはるかに優れた精神が、学習以外の目的で独自のサイファースクリプトを作成しないようにアドバイスしていることに注意する必要があります.

コードをデコードできるようにしたい場合は、キーを提供してください。だからあなたの場合:

s maps to h
t maps to i
f maps to t

このコードが私の提案を示していることを願っています:

In [1]: from cyro import your_cyrptic_function

In [2]: key = {'s':'h', 't':'i', 'f':'t'}

In [3]: secret_word = your_cyrptic_function('hit')

In [4]: decyrpted_secret_word = ''

In [5]: for letter in secret_word:
    decyrpted_secret_word += key[letter]
   ...:                 

In [6]: print(decyrpted_secret_word)
hit

上記のコードでは、元のコードを関数に変えました:

def your_cyrptic_function(secret):

    message = secret
    key = 11
    coded_message = ""

    for ch in message:
        code_val  = ord(ch) + key
        if ch.isalpha():
            if code_val > ord('z'):
                code_val -= ord('z') - ord('a')
            coded_message = coded_message + chr(code_val)
        else:
            coded_message = coded_message + ch
    # print ("Input: " + message)
    return coded_message

Python でこれを行うための優れた方法がいくつかあります。cyptopgraphy に興味がある場合は、 Udacities クラス cs387 応用暗号化をチェックしてください。

于 2012-12-24T05:32:26.193 に答える