我刚用Python写了一个程序。程序执行以下操作:
有一个类叫做original。它有两个方法(init的一部分)。第一种方法是代码。“代码”所做的是接收一个字符串并对其进行编码,将接收到的字符串中的每个字符更改为ASCII表中的另一个字符。此ASCII字符取决于函数generacion\u clave。函数generacion clave随机生成一个介于1和k之间的数字(k是此函数的输入参数)。你知道吗
例如,字符“e”位于ASCII表的101处。因此,如果生成的数字是8,字符e将更改为ASCII表中位置109(101+8)的字符
decode方法接收编码字符串和clave,并返回解码字符串。你知道吗
我想做的是向程序添加一个包含以下内容的图形界面:
原始字符串的输入框、画布(或输出框?)我们将在哪里显示编码和解码的字符串,一个要编码的按钮和一个要解码的按钮。你知道吗
我对Python很陌生,我读过一些关于Tkinter的教程,但我觉得这一点都不容易。所以我很感激任何帮助:)
from random import randint
class original():
def __init__(self, mensaje_original):
self.mensaje_original = mensaje_original
def code(self, gen_clav, *args):
cadena_codificada =""
clave = gen_clav(*args)
for i in self.mensaje_original:
clave_mod = ord(i) + clave
if clave_mod > 255:
clave_mod = clave_mod - 255
cadena_codificada = cadena_codificada + chr(clave_mod)
return cadena_codificada, clave
def decode(self, cadena_cod_clave):
cadena_decodificada =""
clave = int(cadena_cod_clave[1])
for i in cadena_cod_clave[0]:
clave_mod = ord(i) - clave
if clave_mod > 255:
clave_mod = clave_mod - 255
cadena_decodificada = cadena_decodificada + chr(clave_mod)
return cadena_decodificada, cadena_cod_clave[1]
def generacion_clave(k):
cl = randint(1, k + 1)
return cl
mensaje_original = "Hola tio como estas"
mensaje = original(mensaje_original)
cad_cod_clav = mensaje.code(generacion_clave, 10)
cad_dec_clav = mensaje.decode(cad_cod_clav)
print "La cadena original es: %s" %cad_dec_clav[0]
print "La cadena cifrada es: %s" %cad_cod_clav[0]
print "la clave es: %d " %cad_cod_clav[1]
提前多谢了! 巴勃罗
用Tk构建GUI并不是那么困难。你知道吗
您需要一个条目(用于输入的小部件)、一组标签(用于打印输出)和一个按钮。你知道吗
这里提到构建主框架和使用entry小部件。http://www.effbot.org/tkinterbook/entry.htm
我建议您尝试一下基本的gui(可能在一个单独的文件中),我们将在gui完成后链接它们。你知道吗
如果你需要的话,我会在基本的GUI创建之后帮你链接。你知道吗
我试过了。我开始只添加2个按钮(编码和退出)。Encode应该调用类original中的Encode方法,Quit应该关闭窗口(可以工作)。有人知道为什么编码按钮不起作用吗?你知道吗
非常感谢。 当做 巴勃罗
相关问题 更多 >
编程相关推荐