Форум программистов, компьютерный форум, киберфорум
Python: Tkinter
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 17.05.2020
Сообщений: 14

При нажатии кнопки выводить результат в строку

20.12.2020, 19:47. Показов 2390. Ответов 0

Студворк — интернет-сервис помощи студентам
Написала программу русско-английского переводчика, все слова хранятся в отдельном файле. Прописала графический интерфейс, но не получается правильно подключить кнопку к строке так, чтобы при нажатии в строке выводился перевод слов написанных в предыдущей строке.

Это основной код программы:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from words import words
 
def eng():
    eng_words = {v: k for k,v in words.items()}
    find_word = input('Введите предложение на русском: ' '').split()
    res = ''
    for w in find_word :
        if w in eng_words :
            res = res + eng_words[w] + ' '
        else:
            print('No such key')
            return
    print(' '.join(find_word), ' -> ', res)
 
def rus():
    key = input('Введите предложение на английском: ' '').split()
    res = ''
    for w in key :
        if w in words :
            res = res + words[w] + ' '
        else:
            print('Перевод не найден')
            return
    print(' '.join(key), ' -> ', res)
 
if __name__ == '__main__':
    x=input('Перевести на русский? ' '')
    if x == 'да':
        rus()
    elif x == 'нет':
        eng()
    else:
        print('Увидимся позже')
А это графический интерфейс:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
from tkinter import * 
 
root = Tk()
root.title('Переводчик')
root.geometry('500x200')
root['bg'] = ('#1ca1c9')
root.resizable(False,False)
 
def yes():
    win = Tk()
    win.geometry('500x200') 
    win['bg'] = ('#1ca1c9' )
    win.title('Переводчик') 
    labelExample = Label(win, text = " Введите предложение на английском: ",
                    font=('Times New Roman', 14,'bold'), bg = '#18f2b1')
    labelExample.place(x = 97, y = 10, width = 350, height = 40)
    ent1 = Entry(win, textvariable = ' ', width = 45, bd = 3)
    ent1.place(x = 120, y = 50)
    buttonExample = Button(win, text = 'Перевести',
                            font=('Times New Roman', 12,'bold'), bg = '#18f2b1')
    buttonExample.place(x = 200, y = 80, width = 100, height = 30)
    ent2 = Entry(win, textvariable = ' ', width = 45, bd = 3)
    ent2.place(x = 120, y = 115)
 
def no():
    win = Tk()
    win.geometry('500x200') 
    win['bg'] = ('#1ca1c9' )
    win.title('Переводчик') 
    labelExample = Label(win, text = " Введите предложение на русском: ",
                    font=('Times New Roman', 14,'bold'), bg = '#18f2b1')
    labelExample.place(x = 110, y = 10, width = 305, height = 40)
    ent3 = Entry(win, textvariable = ' ' , width = 45, bd = 3)
    ent3.place(x = 120, y = 50)
    buttonExample = Button(win, text = 'Перевести',
                            font=('Times New Roman', 12,'bold'), bg = '#18f2b1')
    buttonExample.place(x = 200, y = 80, width = 100, height = 30)
    ent4 = Entry(win, textvariable = ' ', width = 45, bd = 3)
    ent4.place(x = 120, y = 115)
 
lbl1 = Label(root, text = 'Перевести на русский?',
                font=('Times New Roman', 14,'bold'), bg = '#18f2b1')
 
btn1 = Button(root,text=' Да ', 
            font=('Times New Roman', 14,'bold'),
            bg = '#18f2b1', command = yes)
btn2 = Button(root,text=' Нет ', 
            font=('Times New Roman', 14,'bold'),
            bg = '#18f2b1', command = no)
 
lbl1.place(x = 110, y = 10, width = 300, height = 40)
btn1.place(x = 150, y = 60, width = 50, height = 40)
btn2.place(x = 300, y = 60, width = 50, height = 40)
root.mainloop()
Вот файл со словами:
Python
1
2
3
words={'on the street':'на улице', 'rain':'дождь', 'snow':'снег', 'weather':'погода', 'rainy':'дождливый', 'day':'день', 
'sunny':'солнечный', 'today':'сегодня', 'not':'не', 'sun':'солнце', 'strange':'странный', 'I':'Я', 'love':'', 'you':'тебя',   
'London':'Лондонский', 'bridge':'мост', 'is falling down':'падает', 'my':'моя', 'fair':'милая', 'lady':'леди'}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.12.2020, 19:47
Ответы с готовыми решениями:

При нажатии кнопок мыши выводить информацию о нажатии соответствующей кнопки
на с++ написать программу которая при нажатии кнопок мыши выводить информацию о нажатии соответствующей кнопки c++

При нажатии кнопки "1" выводить 0, а при нажатии "2" выводить 1 (КР580ВИ53)
привет всем, сломал голову уже, в чём проблема? вот текст программы, которая должна при нажатии кнопки "1 "выводить: 0 , а при...

При нажатии одной и той же кнопки выводить всегда разный текст в lbl
Доброго времени суток, вопрос следующий. Хочу сделать таким образом, что бы при нажатии одной и той же кнопки, выводился всегда разный...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.12.2020, 19:47
Помогаю со студенческими работами здесь

Создать апплет с кнопкой. При нажатии выводить очередную строку из файла
Создать апплет содержащий (JLabel )с текстом "простой апплет", кнопку и текстовое поле (JTextField) в котором при каждом нажатии на кнопку...

Как результат запроса при нажатии кнопки показать в MsgBox?
Есть запрос в результате которого получается таблица с одним полем и есть форма с кнопкой. Как сделать чтобы при ее нажатии появлялась...

Delphi 7: При нажатии кнопки Button3 результат не выводится в Memo
Помогите при нажатии кнопки Button3 результат не выводится в мемо procedur getKoef(var a,b,c:real); begin with Form1 do ...

как при нажатии кнопки очистить результат выбранной jRadioButton и jLabel?
как при нажатии кнопки очистить результат выбранной jRadioButton и jLabel? Добавлено через 25 минут Все разобрался)

При нажатии правой кнопки мыши записать символ красного цвета на экран, при нажатии левой кнопки - заменить на зелёный
При нажатии правой кнопки обеспечить вывод на экран по координатам х и у курсора определенного символа (любого) красного цвета, а при...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 28.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 28.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 19.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru