Создание GUI приложения Python tkinter. Создаем калькулятор на tkinter

  Рет қаралды 139,837

egoroff_channel

egoroff_channel

Күн бұрын

Стать спонсором канала и получить доступ к дополнительным материалам по Python
/ @egoroffchannel
boosty.to/egor...
/ artem_egorov
stepik.org/cou...
Курс по основам python на Степике
stepik.org/cou...
Записывайся на курс на Stepic по ООП, где найдешь много практических задач
Ссылка на урок
egoroffartem.py...
При помощи библиотеки tkinter можно создать свои десктопные графические приложения на python. Мы изучим все основные виджеты, которые применяются в формах и создадим на их основе такие проекты как Калькулятор, Paint, Сапер, Блокнот
Калькулятор на Python при помощи библиотеки tkinter
Все видео этого курса можете найти на сайте
egoroffartem.py...
или в Вк
videos-...
Если кому нужна помощь, предлагаю индивидуальные занятия. Подробнее пишите в личку в вк
artem_e...
python....
В данном группе можете найти информацию о новых видео и задать вопросы

Пікірлер: 141
@АнтонНазарук-щ5с
@АнтонНазарук-щ5с 2 жыл бұрын
9:00 - функцию add_digit, что бы значения добавлялись с конца можно написать проще: def add_digit(digit): calc.insert("end",digit) С использованием "end" как места вставки первого символа П.С. Очень хорошие уроки, благодарю Вас
@jdjLoUzjzosh
@jdjLoUzjzosh 2 жыл бұрын
спасибо
@даниилпавленко-ъ2з
@даниилпавленко-ъ2з 2 жыл бұрын
Тоже так сразу сделал. Это ж на сколько упрощает функцию. Только вместо "end" можно просто END, как-то понятней выглядит
@Trezvy_Papa
@Trezvy_Papa 2 жыл бұрын
cifra1 = tk.Button(text='1', command=lambda: asd.insert(tk.END, '1') Таким образом записывал все цифры и знаки.
@user22335
@user22335 2 жыл бұрын
Чел спасибо долго мучился не мог понять почему не работает как надо спас просто
@Лаутив
@Лаутив Жыл бұрын
Мое уважение
@hdrhighdigitalrap5474
@hdrhighdigitalrap5474 2 жыл бұрын
Клаааасс, какое же удовольствие! отдельное спасибо за озвучивание горячих клавиш! наконец-то хоть кто-то это делает, это очень полезно и как мёдик ложится на процесс обучения, спасибо!!!!!!
@Milanchik.
@Milanchik. 9 ай бұрын
Препод по программированию часто пропускает занятия, а лабораторные нам как-то сдавать нужно) ты мой спаситель😂🔥
@alexluthier786
@alexluthier786 3 ай бұрын
Поставьте 2 вашему преподу и его родителей к директору вызовите.
@Milanchik.
@Milanchik. 3 ай бұрын
@@alexluthier786 его уже уволили🥰
@malf9671
@malf9671 3 жыл бұрын
Это так легко, что даже мотивирует меня наконец-то уже начать заниматься программированием Ps. Реально замотивировался уже больше года учу python, из-за знаний в программировании круто вывез егэ потому что набрал по инфе 85 и вообще жизнь хорошо сложилась потому что посмотрел этот ролик
@arnoldvelichko9754
@arnoldvelichko9754 Жыл бұрын
tkinter очень простая библиотека, изучение дается очень легко и радует, что получаются невероятные вещи для актуального уровня знаний
@ВадимАкст-ы1р
@ВадимАкст-ы1р Жыл бұрын
Отдельное спасибо за ДЕТАЛЬНЫЙ разбор;)
@КириллКириллович
@КириллКириллович 4 жыл бұрын
большое спасибо за уроки по tkinter!
@TheBeatStreet0
@TheBeatStreet0 2 жыл бұрын
спасибо давно не мог понять у тя всё понятно и интересно)!Желаю удачи в ютубе
@ВВЗ
@ВВЗ 3 жыл бұрын
Спасибо за уроки, большая работа проделана и полезная для людей.
@SevaraIsroilova-bx8ph
@SevaraIsroilova-bx8ph 10 ай бұрын
Спасибо большое, что так хорошо объяснили:) 😊👍
@damirchpok7570
@damirchpok7570 Жыл бұрын
У меня почему то insert - ошибка, кто знает почему это может быть?
@Ланселот-ш2в
@Ланселот-ш2в 4 жыл бұрын
Было бы интересно увидеть приложение, сравнивающее 2 pdf файла и выделяющее различия между ними
@Tetyam18
@Tetyam18 Жыл бұрын
Tkinter вроде работает только с пнг файлами
@barinvic
@barinvic Жыл бұрын
так на Python можно написать...
@so_nya
@so_nya 3 жыл бұрын
Спасибо огромное!
@Felix-sw2mo
@Felix-sw2mo 2 жыл бұрын
Спасибо за видео
@НайлНаре
@НайлНаре 3 ай бұрын
8:20 кстати, вместо того, чтобы изобретать велосипед, вместо нуля можно было указать END.
@user-ce1qy6uf2d
@user-ce1qy6uf2d 4 жыл бұрын
Спасибо!
@whitehat-it-4096
@whitehat-it-4096 4 жыл бұрын
Реально круто
@daniilkrivopust7377
@daniilkrivopust7377 2 жыл бұрын
Интересно было смотреть, спасибо за видео❤
@muhammadislom7207
@muhammadislom7207 4 жыл бұрын
Спасибо большое.
@qlyaxy
@qlyaxy 4 жыл бұрын
Очень сильно ждуу
@Александр-д8ы6л
@Александр-д8ы6л Жыл бұрын
привет из 2023, написал эту бурду в chatgpt за 15 минут вместе с дизайном и доп.функциями
@ЭмметтБраун-у3т
@ЭмметтБраун-у3т Жыл бұрын
И зачем надо было говорить это?
@maksfanvashchenko2533
@maksfanvashchenko2533 10 ай бұрын
И смысл Ты научился от этого программированию Если нет то смысл вообще создавать программы если тебе это не надо
@WF_NEW
@WF_NEW 4 ай бұрын
Ага, на работу приди и скажи за меня чат гпт отработает
@alexluthier786
@alexluthier786 3 ай бұрын
Ну, это понятно, что gpt умнее некоторых людей. Когда человек учится программировать, то смысл не в том, чтобы решить задачу любой ценой,а в том, чтобы имеющиеся знания и навыки в том или ином ЯП, сконфигурировать в своей голове так, чтобы ты смог решить эту задачу. А вот когда ты УЖЕ научилсям работаешь по профессии, вот тогда не только можно, но и нужно использовать всяких помощников от чат-жэпэтэ, до персональных рабов(если таковые имеются). Кстати, жпт, не всегда выдает на 100% рабочий код. И тогда, тебе пригождаются свои знания. Да, быстро можно набрлсать при помощи жпт "рыбу", но допиливать и доводить до идеала, лучше своими ручками.
@АлександрКравченко-т2ю
@АлександрКравченко-т2ю 3 жыл бұрын
Спасибо
@vitsol2
@vitsol2 4 жыл бұрын
Отлично
@maffn
@maffn Жыл бұрын
Где взять вторую часть
@qlyaxy
@qlyaxy 4 жыл бұрын
Очень помогло
@damirchpok7570
@damirchpok7570 Жыл бұрын
from tkinter import * def fun(s): entry.insert(0,s) root=Tk() root.geometry('400x400') entry = Entry(root).grid(row=0, column=0) bt=Button(root,command= lambda : fun(5)).grid(row=1, column=1) root.mainloop() В чем тут ошибка? Показывает, что то не так с insert
@damirchpok7570
@damirchpok7570 Жыл бұрын
Проблема была решена тем что я отдельно написал entry.grid(0,0) Но почему это так кто нибудь может объяснить???
@nektosnext
@nektosnext Жыл бұрын
@@damirchpok7570 хуй его знает сам по рофлу так сделал может помотже и помогло
@HackerWhite4521
@HackerWhite4521 4 ай бұрын
@@nektosnext нет так у Автор так код не работает! в python этот метод кода убрали! надо уже не так совсем по другому Вводить код!!
@HackerWhite4521
@HackerWhite4521 4 ай бұрын
@@nektosnext с помощью eval и не from tkinter а просто import tkinter!
@georginrmz1639
@georginrmz1639 3 жыл бұрын
топчик
@markpantuszev3805
@markpantuszev3805 2 жыл бұрын
Здравствуйте. Допустим, что есть уже поле Entry, куда можно вводить какие-то числа. Как сделать так, чтобы при открытии окна в поле Entry сразу был 0, который можно заменить любой цифрой, но нельзя стереть?
@00no.one00
@00no.one00 2 ай бұрын
calc.insert (0, '0') def c (): calc.delete (0, tk.END) calc.insert (0, '0') def number (a): calc.delete (0, tk.END) inf = calc.get () + calc.insert (digit) Ну хотя бы так
@lucil4_4
@lucil4_4 3 жыл бұрын
В самом начале видоса есть строка в коде: win['bg'] = '#33ffe6'. Я не очень понимаю как мы можем так обращаться как к словарю? Мы же в первом уроке прописывали для смены фона мы прописывали wim.config(bg='red'), а тут сразу как к словарю обращаемся. Пожалуйста объясните, если не сложно
@mayurko_5216
@mayurko_5216 3 жыл бұрын
Наверно есть два способа
@ТихонКотов-д9з
@ТихонКотов-д9з 2 жыл бұрын
это фишка ооп. win это объект, к его атрибутам можно обратиться при помощи методов словаря
@ГулзинаМамиридинова
@ГулзинаМамиридинова Ай бұрын
Как сделать 4:33
@СергейТрафимов-н3о
@СергейТрафимов-н3о 3 жыл бұрын
Что за программа в которой пишешь?
@kokpis4142
@kokpis4142 Жыл бұрын
я не понимаю почему у меня нету digit add_digit у меня какая-то ошибка
@vladimirleontiev8867
@vladimirleontiev8867 4 жыл бұрын
А нельзя ли сделать кнопки через цикл? Ведь дзен говорит не повторяться
@mayurko_5216
@mayurko_5216 3 жыл бұрын
Можно, но работать кнопки не будут, вернее будут, но неправильно, я проверяла. Либо я не нашла способ это исправить
@vladimirleontiev8867
@vladimirleontiev8867 3 жыл бұрын
@@mayurko_5216 я уже не помню сути, но вроде я делал так как указал в комментарие
@mayurko_5216
@mayurko_5216 3 жыл бұрын
@@vladimirleontiev8867 Значит всё-таки можно)
@lepdmitrijj
@lepdmitrijj 3 жыл бұрын
А как сделать сохранение последних 10 расчётов в калькуляторе?
@why-ej2xo
@why-ej2xo 3 жыл бұрын
хз,мб каждый в список засовывать, а потом доставать
@ДамирКрасильников-б5г
@ДамирКрасильников-б5г 3 жыл бұрын
@@why-ej2xo лучше через open(r'path/to/the/file.txt', a) записывать результат. Посмотрите функцию open, она позволяет сохранять любые файлы и использовать их вне программы
@djokr.3386
@djokr.3386 2 жыл бұрын
Гайс, а как называется интерпретатор который юзает автор?
@ТихонКотов-д9з
@ТихонКотов-д9з 2 жыл бұрын
pycharm ide
@illyastt
@illyastt 4 жыл бұрын
Помоги! Я скачал такую же програму как у тебя, PyCharm! И когда я запускаю from tkinter import * tk = Tk() canvas = Canvas(tk, width=500, height=500) canvas.pack() то у меня неоткрывается ничего, проспо пишет Process finished with exit code 0 в консоле
@yaditrc
@yaditrc 4 жыл бұрын
tk.mainloop() - допиши в конце программы
@ЖоржМилославкий
@ЖоржМилославкий 3 жыл бұрын
Подскажите пожалуйста, почему при вызове метода .grid, пайчарм выдает ошибку: tkinter.TclError: cannot use geometry manager grid inside . which already has slaves managed by pack
@egoroffchannel
@egoroffchannel 3 жыл бұрын
Потому что где то в коде использован pack или geometry
@ЖоржМилославкий
@ЖоржМилославкий 3 жыл бұрын
@@egoroffchannel Спасибо. Разобрался.
@tinlager2617
@tinlager2617 2 жыл бұрын
У меня почему то после 6 строки пишет ошибку
@jonydosh1189
@jonydosh1189 2 жыл бұрын
подскажите пожалуйста как зафиксировать размер окна калькулятора ???
@ТихонКотов-д9з
@ТихонКотов-д9з 2 жыл бұрын
объект.resizable(False, False)
@aleksa_blackrussia
@aleksa_blackrussia 2 жыл бұрын
дайте пж ссылку на текст, у меня не работает калькулятор
@andreykorenev2468
@andreykorenev2468 2 жыл бұрын
Всем привет, я только не понял вот эту строчку функции: digit = calc.get() + str(value) Что она вооще делает? Заранее спасибо за ответ)
@00no.one00
@00no.one00 2 ай бұрын
немного перепутано. digit и value поменять местами. создание переменной для функции, которая будет выводить информацию из entry, а потом добавлять к ней какой-то символ или цифру
@Немножкоматематикинемногошахма
@Немножкоматематикинемногошахма 2 жыл бұрын
А не проще вместо грид использовать place?
@nektosnext
@nektosnext Жыл бұрын
аьа какь щитать ни ровно жи будет
@yayoi386
@yayoi386 4 жыл бұрын
А разве, чтобы цифра добавлялась в конец не надо в инсерте первым параметром задать END?
@sagi_abd
@sagi_abd 4 жыл бұрын
это не текст это энтри
@даниилпавленко-ъ2з
@даниилпавленко-ъ2з 2 жыл бұрын
@Serrr оно и так работает. Просто начальное зачение END и всё, добавляет в конец существующей строки
@Vasiliy_Pupkin
@Vasiliy_Pupkin 2 жыл бұрын
Вот я тоже об этом задумался. Автор же себе жизнь усложняет
@sindrom_vosmiclassnika
@sindrom_vosmiclassnika 3 жыл бұрын
Что за программа
@kutman.eshenkulov
@kutman.eshenkulov 4 жыл бұрын
Raskajy pro: Notebook, bind, Enter, Leave please
@КириллН-й3н
@КириллН-й3н 3 жыл бұрын
Почему нельзя присвоить command простую функцию def,почему именно lambda?
@МатвейСиливанов
@МатвейСиливанов 3 жыл бұрын
потому что функции def будут выполнятся сами. Ты запустишь программу, а у тебя в текстовом поле сразу будет написано 1234567890\+=-, а лямбда функции будут выполнятся только после нажатия. не знаю почему так, но я сам проверял
@ДамирКрасильников-б5г
@ДамирКрасильников-б5г 3 жыл бұрын
@@МатвейСиливанов нет, просто функция - это обьект (Разузнайте что такое ООП), и в параметр command нужно передавать нужную функцию как обьект, а не вызывать её. Если вы пишите (назовем функцию add_digit()) название функции со скобками, то интерпретатор выполняет её, где бы она не стояла, но в нашем случае нужно передавать имя функции без скобок, говоря что параметр command объекта Button теперь - функция add_digit()
@00no.one00
@00no.one00 2 ай бұрын
в command можно использовать простую функцию, которая не принимает какие-либо аргументы. Если уже с аргументами, то использовать для этого lambda
@trenkov2390
@trenkov2390 4 жыл бұрын
к сожалению пишет что нет атрибута insert. В чём дело не понимаю(((
@phat80
@phat80 4 жыл бұрын
Может потому, что это не атрибут, а метод? Сигнатуру метода соблюли?
@ivanloginov8605
@ivanloginov8605 2 жыл бұрын
как сделать чтобы он делил без остатка
@alexluthier786
@alexluthier786 3 ай бұрын
Давайте ему такие числа, которые делятся без остатка. Это все числа с основанием 2. А в калькуляторе придумайте функцию, которая проверяет число на возможность деления без остатка. Если число подходит, то делит его, а если нет, то выдает сообщение: "число невозможно разделить без остатка, придумайте другое".
@00no.one00
@00no.one00 2 ай бұрын
@@alexluthier786 просто использовать round, чтобы делил абсолютно все числа без остатка и округлял их к ближайшему целому
@oks_yerm
@oks_yerm 8 ай бұрын
Як добавити кнопку корінь??????
@codefinder2232
@codefinder2232 3 ай бұрын
Як символ ASCII.
@firuzhasanov4504
@firuzhasanov4504 2 жыл бұрын
'value' eto chto
@andreylebedev4078
@andreylebedev4078 4 жыл бұрын
А не проще так? def add_digits(digit): calc.insert('end', digit)
@mayurko_5216
@mayurko_5216 3 жыл бұрын
Да, можно и так. Вообще можно не создавать отдельную функцию для одной команды, а написать *command= lambda : calc.insert('end', 0)* Вместо 0 любая цифра
@TornixSpeed
@TornixSpeed 3 ай бұрын
у кого есть полноценный код? скиньте
@veliky_brawl5602
@veliky_brawl5602 3 жыл бұрын
from tkinter import * from tkinter import messagebox import time window=Tk() window.geometry('600x400') window.title('Calculator') window.maxsize(318, 334) password = Entry(width=20,justify=RIGHT,font=('Arial',14)) password.grid(column=0,row=0,columnspan=20,stick='we') frame = Label(password,text = 'Error',fg='red',width=10,font=('Arial',17)) def add_digit(digit): value = password.get() + str(digit) if value[0]=='0': value=value[1:] password.delete(0, END) password.insert(0, value) if digit == c: password.delete(0, END) add_rotate() def add_rotate(): if len(password.get()) == 10: frame.grid() password.delete(0, END) def one_ce(): try: solution = eval(password.get()) messagebox.showinfo('Готово!',f'Решение найдено: {solution}') except NameError: messagebox.showerror('Ошибка!','Что-то написано не правильно') except SyntaxError: messagebox.showwarning('Внимание!','Вы что-то пропустили') except ZeroDivisionError: messagebox.showwarning('Внимание!','Деление на ноль!') button0 = Button(text='0',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(0)) button0.grid(column=0,row=4) button1 = Button(text='1',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(1)) button1.grid(column=0,row=3) button4= Button(text='4',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(4)) button4.grid(column=0,row=2) button7 = Button(text='7',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(7)) button7.grid(column=0,row=1) button2= Button(text='2',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(2)) button2.grid(column=1,row=3) button5 = Button(text='5',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(5)) button5.grid(column=1,row=2) button8 = Button(text='8',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(8)) button8.grid(column=1,row=1) ravno = Button(text='=',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=one_ce) ravno.grid(column=1,row=4) button3 = Button(text='3',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(3)) button3.grid(column=2,row=3) button6 = Button(text='6',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(6)) button6.grid(column=2,row=2) button9 = Button(text='9',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(9)) button9.grid(column=2,row=1) c = Button(text='C',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit(c)) c.grid(column=2,row=4) plus = Button(text='+',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit('+')) plus.grid(column=3,row=1) minuse = Button(text='-',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit('-')) minuse.grid(column=3,row=2) podelit = Button(text='/',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit('/')) podelit.grid(column=3,row=3) umnozit = Button(text='*',bd=5,width=7,height=3,fg='orange',bg='grey',font=('Arial',13),anchor='center',command=lambda: add_digit('*')) umnozit.grid(column=3,row=4) еще так можно сделать...
@veliky_brawl5602
@veliky_brawl5602 3 жыл бұрын
ну я только переменные по другому назвал.
@sy_of
@sy_of 2 жыл бұрын
А можешь так же, только инженерный калькулятор сделать?
@ПОЗИТИВНЫЙЧУВАК-й2ц
@ПОЗИТИВНЫЙЧУВАК-й2ц 2 жыл бұрын
у меня он не запускается
@mrandmss2084
@mrandmss2084 4 жыл бұрын
можно готовый код? очень надо
@voiflois
@voiflois 4 жыл бұрын
@endy cat причем тут это? рассмотреть код нужно чтобы понять принцип работы каждой строчки мне это тоже нужно я незнаю как сделать чтобы когда окно растягиваешь кнопки на месте не оставались
@netfrost.official2286
@netfrost.official2286 Жыл бұрын
import tkinter as tk from tkinter import messagebox def add_digit(digit): value = calc.get() if value[0]=="0" and len(value): value = value[1:] calc.delete(0,tk.END) calc.insert(0,value+digit) def add_operation(operation): value = calc.get() if value[-1] in "+-*/": value = value[:-1] elif "+" in value or "-" in value or "*" in value or "/" in value: calculate() value = calc.get() calc.delete(0, tk.END) calc.insert(0, value+operation) def calculate(): value = calc.get() if value[-1] in "+-*/": value = value+value[:-1] calc.delete(0, tk.END) try: calc.insert(0, eval(value)) except (NameError,SyntaxError): messagebox.showinfo("ошибка","вы ввели другие символы") calc.insert(0, 0) except ZeroDivisionError: messagebox.showinfo("ошибка", "на ноль делить нельзя") calc.insert(0, 0) def clear(): calc.delete(0, tk.END) calc.insert(0,0) def make_digit_button(digit): return tk.Button(text=digit, bd=5, font=("Unispace",13), command=lambda : add_digit(digit)) def make_operation_button(operation): return tk.Button(text=operation, bd=5, font=("Unispace",13), fg="blue", command=lambda : add_operation(operation)) def make_calc_button(operation): return tk.Button(text=operation, bd=5, font=("Unispace",13), fg="blue", command=calculate) def make_clear_button(operation): return tk.Button(text=operation, bd=5, font=("Unispace",13), fg="blue", command=clear) def press_key(event): print(repr(event.char)) if event.char.isdigit(): add_digit(event.char) elif event.char in "+-*/": add_operation(event.char) elif event.char == " ": calculate() win = tk.Tk() win.geometry(f"275x290+100+200") win.resizable(width=False, height=False) win["bg"] = "#00c4fa" win.title("Калькулятор") win.bind("", press_key) calc = tk.Entry(win, justify=tk.RIGHT, bd=10, font=("Unispace",15)) calc.insert(0, "0") calc.grid(row=0, column=0, columnspan=4, stick="we", padx=5) make_digit_button("1").grid(row=1, column=0, stick="wens",padx=5, pady=5) make_digit_button("2").grid(row=1, column=1, stick="wens",padx=5, pady=5) make_digit_button("3").grid(row=1, column=2, stick="wens",padx=5, pady=5) make_digit_button("4").grid(row=2, column=0, stick="wens",padx=5, pady=5) make_digit_button("5").grid(row=2, column=1, stick="wens",padx=5, pady=5) make_digit_button("6").grid(row=2, column=2, stick="wens",padx=5, pady=5) make_digit_button("7").grid(row=3, column=0, stick="wens",padx=5, pady=5) make_digit_button("8").grid(row=3, column=1, stick="wens",padx=5, pady=5) make_digit_button("9").grid(row=3, column=2, stick="wens",padx=5, pady=5) make_digit_button("0").grid(row=4, column=0, stick="wens",padx=5, pady=5) make_operation_button("+").grid(row=1, column=3, stick="wens",padx=5, pady=5) make_operation_button("-").grid(row=2, column=3, stick="wens",padx=5, pady=5) make_operation_button("*").grid(row=3, column=3, stick="wens",padx=5, pady=5) make_operation_button("/").grid(row=4, column=3, stick="wens",padx=5, pady=5) make_calc_button("=").grid(row=4, column=2, stick="wens",padx=5, pady=5) make_clear_button("C").grid(row=4, column=1, stick="wens",padx=5, pady=5) win.grid_columnconfigure(0,minsize=60) win.grid_columnconfigure(1,minsize=60) win.grid_columnconfigure(2,minsize=60) win.grid_columnconfigure(3,minsize=60) win.grid_rowconfigure(1,minsize=60) win.grid_rowconfigure(2,minsize=60) win.grid_rowconfigure(3,minsize=60) win.grid_rowconfigure(4,minsize=60) win.mainloop() надеюсь помог
@netfrost.official2286
@netfrost.official2286 Жыл бұрын
Код сам писал если что-то не так сорри
@xder4061
@xder4061 Жыл бұрын
​@@netfrost.official2286 Гений через 2года ответил
@ornyyxxx2407
@ornyyxxx2407 Жыл бұрын
@@netfrost.official2286 спасибо , ты лучший
@qlyaxy
@qlyaxy 4 жыл бұрын
Сделай пж продолжение
@tehnobus
@tehnobus 2 жыл бұрын
не работает, grid
@amgabad
@amgabad 3 жыл бұрын
что за ide?
@mayurko_5216
@mayurko_5216 3 жыл бұрын
PyCharm
@darul-asar381
@darul-asar381 4 жыл бұрын
Артем привет, у меня вопрос по поводу этой функции 👇👇👇👇👇👇👇👇 def add_digit(digit): value = calc.get() + str(num) calc.delete(0,tk.END) calc.insert(0,value) это поле 👉 calc.delete(0,tk.END) что оно удаляет? Я не очень понял логику его предназначения
@mayurko_5216
@mayurko_5216 3 жыл бұрын
Удаляет всё от начала до конца
@damirmagassumov
@damirmagassumov Жыл бұрын
Я правильно понимаю, что у меня интерфейс и кнопки выглядят по ублюдски и совсем не так как у автора из-за того, что я на маке работаю?
@HackerWhite4521
@HackerWhite4521 4 ай бұрын
нет так у Автор так код не работает! в python этот метод кода убрали! надо уже не так совсем по другому Вводить код!!
@turiduri_0
@turiduri_0 Жыл бұрын
Сорри а где +,-,//?
@00no.one00
@00no.one00 2 ай бұрын
перейди на следующий урок
@CylesterBase
@CylesterBase 4 жыл бұрын
Делаю ролики для себя на своем канале
@СтаниславЗизевский-ц4ь
@СтаниславЗизевский-ц4ь Жыл бұрын
👌👌👌
@mercik7478
@mercik7478 3 жыл бұрын
Кто нибудь, помогите. Я не могу превратить файл в exe шник. Именно конкретно с ткинтером. Вылетает, когда запускаю exe шник, который вывел с команды pyinstaller имя файла
@akayo_yt3438
@akayo_yt3438 3 жыл бұрын
pyinstaller -F имя файла так правильнее
@influence3015
@influence3015 4 жыл бұрын
Здравствуйте, извините, что не совсем по теме видео, но можете кто нибудь подсказать тему ВКР (диплома) по программированию (желательно что бы связанное с самим программированием , но не вебпрограммированием...) Просто неожиданно мне тему по нейро сетям убрали и сказали придумывай тему сам, срок до ноября, а идей совсем нету.. (из языков знаю с с++, с#, java (похуже python и rust)) надеюсь, что пару идей найдете.. заранее спасибо!
@nikitanaidenov7221
@nikitanaidenov7221 2 жыл бұрын
Как диплом сдал ?)
@influence3015
@influence3015 2 жыл бұрын
@@nikitanaidenov7221 на отлично )
@MetamorphosisMetamorphosis-s
@MetamorphosisMetamorphosis-s 4 жыл бұрын
Бро, очень прошу запили видос как подключить Python 3.8 к Qt Designer? А то в ютубе есть только питон 3.6 Что б как у хауди Хо тут только версию питона 3.8 а не как у него 3.6. kzbin.info/www/bejne/mXyQmal9YrZseJI
@phat80
@phat80 4 жыл бұрын
Смотри дальше своего Хауди хо ))) Вообще голова перестанет работать.
@MetamorphosisMetamorphosis-s
@MetamorphosisMetamorphosis-s 4 жыл бұрын
@@phat80 я не только по Хауди с питоном знакомлюсь.
@naoki233
@naoki233 2 жыл бұрын
@@MetamorphosisMetamorphosis-s далеко продвинулись с хайди хо?
@ВаняДэджопович
@ВаняДэджопович 4 жыл бұрын
А чере з Что ты кодптшещ
@madduck4484
@madduck4484 Жыл бұрын
Лан, извини
@cyberboy5699
@cyberboy5699 3 жыл бұрын
код не рабочиий просто савте дизлайк поотеряете врремя
@спутникдели
@спутникдели 2 жыл бұрын
сделал по шагам всё до 51 секунды вместо калькулятора получил вот это File "C:\Python38-64\lib\tkinter\__init__.py", line 2035, in wm_geometry return self.tk.call('wm', 'geometry', self._w, newGeometry) _tkinter.TclError: bad geometry specifier "f 240*260 + 100 + 200"
@residenttt4190
@residenttt4190 2 жыл бұрын
попробуй не ставить пробелы
@спутникдели
@спутникдели 2 жыл бұрын
@@residenttt4190 спасибо , но не помогло , правда сейчас другая ошибка unexpected EOF while parsing
@yurynagorny
@yurynagorny 2 жыл бұрын
благодарю!!!
@plutongaming3735
@plutongaming3735 3 жыл бұрын
Спасибо
@cyberboy5699
@cyberboy5699 3 жыл бұрын
код не рабочиий просто савте дизлайк поотеряете врремя \
@naoki233
@naoki233 2 жыл бұрын
если вы написали что-то не правильно, то это именно ВЫ виноваты в этом, а никак не автор, лично у меня всё прекрасно работает
@HackerWhite4521
@HackerWhite4521 4 ай бұрын
@@naoki233 Нет просто код не работает это правда eval с помощью него создают этот калькулятор и не from tkinter a import tkinter!
@00no.one00
@00no.one00 2 ай бұрын
@@HackerWhite4521 а в коде из видео-урока где-то написано 'from tkinter'? Человек правильно написал код
СИНИЙ ИНЕЙ УЖЕ ВЫШЕЛ!❄️
01:01
DO$HIK
Рет қаралды 3,3 МЛН
ТОП 5 Ошибок в написании функций Python
12:46
Самое простое объяснение нейросети
16:30
Программный Кот
Рет қаралды 140 М.
Как устроены швейные машинки? [Veritasium]
16:50
КВАНТОВАЯ МЕХАНИКА - опыты 21 века
26:58
ВЕЛИКОХАТСКИЙ | НАУКА
Рет қаралды 200 М.
Как делить на НОЛЬ // Vital Math
29:16
Vital Math
Рет қаралды 116 М.
Кратко про Python Tkinter | Как создавать GUI Приложения
11:08
Псевдо Программист
Рет қаралды 68 М.
СИНИЙ ИНЕЙ УЖЕ ВЫШЕЛ!❄️
01:01
DO$HIK
Рет қаралды 3,3 МЛН