猫史档案馆


我错在哪里。

用户:阿佳是个程序员阿佳是个程序员查看:2 回复:3 评论:2 创建时间:2021-07-10T16:19:30


from tkinter import messagebox, simpledialog, Tk


def is_even(number):

    return (number % 2 == 0)


def get_even_letters(message):

    even_letters = []
    for counter in range(0, len(message)):
        if is_even(counter):
            even_letters.append(even_letters[counter])
    return even_letters


def get_odd_letters(message):

    odd_letters = []
    for counter in range(0, len(message)):
        if (not is_even(counter)):
            odd_letters.append(even_letters[counter])
    return odd_letters


def swap_letters(message):
    letter_list = []
    if not is_even(len(message)):
        message = message + 'x'
    even_letters = get_even_letters(message)
    odd_letters = get_odd_letters(message)
    for counter in range(0, int(len(message)/2)):
        letter_list.append(odd_letters[counter])
        letter_list.append(even_letters[counter])
    new_messare = ''.join(letter_list)
    return new_messare


def get_task():
    task = simpledialog.askstring('Task', 'What do you want? 1.encrypt  2.decrypt')

    return task


def get_message():
    message = simpledialog.askstring('Message', 'Enter the secret message: ')
    return message


root = Tk()

while True:
    task = get_task()
    if task == '1':
        message = get_message()
        encrypted = swap_letters(message)
        messagebox.showinfo('Ciphertext of the secret message is:', encrypted)
    elif task == '2':
        message = get_message()
        decrypted = swap_letters(message)
        messagebox.showinfo('Plaintext of the secret message is:', decrypted)
    else:
        break
root.mainloop()

各位大神们!帮我看一看,错在哪里。


回复

上一页1 页 / 共 1下一页
ARPHAZOLAMARPHAZOLAM

报错信息为:IndexError:List index out of range

数组索引报错,数组索引超出范围

点赞0


评论


CHZS超级mcCHZS超级mc

ImportError: No module named tkinter on line 1

点赞0


评论


lsk666666lsk666666

问题解决

from tkinter import messagebox, simpledialog, Tk


def is_even(number):

    return (number % 2 == 0)


def get_even_letters(message):

    even_letters = []
    for counter in range(0, len(message)):
        if is_even(counter):
            even_letters.append(message[counter])
    return even_letters


def get_odd_letters(message):

    odd_letters = []
    for counter in range(0, len(message)):
        if (not is_even(counter)):
            odd_letters.append(message[counter])
    return odd_letters


def swap_letters(message):
    letter_list = []
    if not is_even(len(message)):
        message = message + 'x'
    even_letters = get_even_letters(message)
    odd_letters = get_odd_letters(message)
    for counter in range(0, int(len(message)/2)):
        letter_list.append(odd_letters[counter])
        letter_list.append(even_letters[counter])
    new_messare = ''.join(letter_list)
    return new_messare


def get_task():
    task = simpledialog.askstring('Task', 'What do you want? 1.encrypt  2.decrypt')

    return task


def get_message():
    message = simpledialog.askstring('Message', 'Enter the secret message: ')
    return message


root = Tk()

while True:
    task = get_task()
    if task == '1':
        message = get_message()
        encrypted = swap_letters(message)
        messagebox.showinfo('Ciphertext of the secret message is:', encrypted)
    elif task == '2':
        message = get_message()
        decrypted = swap_letters(message)
        messagebox.showinfo('Plaintext of the secret message is:', decrypted)
    else:
        break
root.mainloop()

点赞0


评论