Еще чуток подправил код, избавился от передачи аргументов в add_digit, add_temp и math_operation. Можно увидеть в статье на Хабре. Всё лежит на GitHub. 3 часть в процессе.
Благодарю! Первое видео с дизайном хорошо выдает в поиске, вижу по тегам через специальное расширение в хроме, а вот второе и третье уже никому не нужны :)
У меня была подобная ошибка. Скорее всего, проблема в том, что файл "design" был не в проекте. Возможно вы запускали файл отдельно от других частей программы
У меня появился вот такая проблема: Я списывал код из видео почти точь в точь , но терминал говорит мне что float нельзя , а точнее невозможно переформировать в string: n = str(float(num)) ValueError:could not convert string to float Списывал я здесь 4:00
0:23 При запуске программы выходит такая ошибка, какое приложение нужно переустановить?: This application failed to start because no QT platform plugin could be initialized. Reinstalling the application may fix this problem.
Не знаю будет ли мой ответ полезным, ведь прошло много времени. Я в начале кода написал, что-бы он эти plugins находил в папке, у меня PySide 2 и Qt designer 5 поэтому код может отличаться от современных версий import os import PySide2 dirname = os.path.dirname(PySide2.__file__) plugin_path = os.path.join(dirname, 'plugins', 'platforms') os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path print(plugin_path) Он потом должен написать путь к папке если всё получилось , либо их можно засунуть в нужную папку, но это уже в интернете ищи
Подскажите что делать Traceback (most recent call last): File "C:\Users\tashe\PycharmProjects\Gui\main.py", line 4, in from design import Ui_MainWindow ModuleNotFoundError: No module named 'design'
File "C:\Users\79061\PycharmProjects\calculator.py", line 7, in from design import Ui_MainWindow SyntaxError: source code string cannot contain null bytes Как фиксить?
0:25 Ошибка: Traceback (most recent call last): File "C:/Users/Администратор/Desktop/Калькулятор/main.py", line 21, in sys.exit(app.exec()) AttributeError: 'PySide6.QtWidgets.QApplication' object has no attribute 'exec' Как её решить?
Здравствуйте! У меня проблема, когда я запускаю программу, выскакивает окно с ошибкой: "This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem." Первый раз пишу программу с интерефейсом, помогите, пожалуйста. Ничего не помогает..(
@@Mema817 Мне помоги Traceback (most recent call last): File "c:\Users\alex1\Desktop\Calculet\main.py", line 16, in window = Calculator() File "c:\Users\alex1\Desktop\Calculet\main.py", line 11, in __init__ self.ui.setupUi(self) File "c:\Users\alex1\Desktop\Calculet\desing.py", line 16, in setupUi MainWindow.setMinimumSize(QtCore.QSize(350, 550)) TypeError: 'PySide6.QtWidgets.QWidget.setMinimumSize' called with wrong argument types: PySide6.QtWidgets.QWidget.setMinimumSize(QSize) Supported signatures: PySide6.QtWidgets.QWidget.setMinimumSize(PySide6.QtCore.QSize) PySide6.QtWidgets.QWidget.setMinimumSize(int, int)
@@nezeritsky9386 там нужно было библиотеку добавить в папку, честно говоря уже и не помню что и куда, но на RUclips есть решение, в поисковик вбей свою ошибку.
Что делать если в терминале пишет: PS C:\Users\vova2)\OneDrive\Рабочий стол\project & „C:/Program Files/Python312/python.exe” „c:/Users/vova2/OneDrive/Рабочий стол/project/main.py” Traceback (most recent call last): File “c:\Users\vova2)\OneDrive\Рабочий стол\project\main.py”, line 6, in from design import Uk_MainWindow SyntaxError: source code string cannot contain null bytes PS C:\Users\vova2\OneDrive\Рабочий стол\project> Я если что новичок и плохо понимаю Пишу код через Visual Studio Code
Композиция Fly me to the moon В конце видео Мне очень понравилась Но я не могу её найти То что вы оставили в описании под видео, я смотрел. Но там нет этой композиции. А в поиске в интернете я смог найти только в исполнении Френка синатры. Подскажите, как найти именно эту песню? Как у вас на видео
Вероятно причина в обновлениях, но в точности повторяя за тобой (0:32) выдает ошибку TypeError: Ui_MainWindow.setupUi() missing 1 required positional argument: 'MainWindow'. На гите смотрел, файлы идентичны, но ошибку выдает. Все файлы находятся в одном месте.
что делать File "D:\Calculator\main.py", line 18, in self.ui.btn_2.clicked.connect(lambda: self.add_digit('2')) AttributeError: 'Calculator' object has no attribute 'add_digit и так со всеми кнопками
Очень информативное видео, но я не могу понять, что за стрелки идут после названия функции? В интернетах ничего не нашел, не могли бы вы скинуть ссылку на документацию по этим "стрелочкам"?
Ребят подскажите на 2:12 не включається калькулятор так как пишет две ошибки: unresolved references 'QMainWindow' unresolved references 'QApplication' , что делать ?
а по каким данным , видео или статьям и книгам/курсами ты все это учил? можешь помочь? желание есть , а куда и что не знаю , ибо инфы слишком много и я теряюсь
Сначала прочитай первую часть книги Изучаем Python: программирование игр, визуализация данных, веб-приложения. 3-е изд. | Мэтиз Эрик Дальше посмотри уроки от selfedu по питону, ну а дальше его же курс по ООП в python Дальше - можешь изучать QT для интерфейсов и библиотеки. В принципе, всё
1.46 дело в том что код не будет работать ведь не найдет значения le_entry ,все потому что видимо pyside поменялось если у вас такие проблемы с le_entry то просто поменяйте все это на lne
Респект автору за креатив. Я только постигаю разработку на пайтон и столкнулся с такой проблемой. Метод get_math_sign , который из строки типа ->(число знак) должен получить получить последний знак методом self.ui.lbl_temp.text().strip('.').split()[-1] как показано в ролике. Почему-то возвращает ту же строку. Может у меня руки кривые, но я так не допер почему нельзя просто использовать что-нить типа self.ui.lbl_temp.text()[-1] , чтоб вытащить знак?
Точно не помню, почему используется разделение по точке. Возможно, есть ситуации, когда это нужно. То есть в обычных случаях возвращается та же строка, но бывают исключения, для которых я дописал строковые методы.
Добрый день! Кнопка не реагирует на метод calculate(), не могу найти ошибку. Подскажите, что не так? def calculate(self) -> Optional[str]: entry = self.ui.le_entry.text() temp = self.ui.lbl_temp.text() if temp: result = self.remove_trailing_zeros( str(operations[self.get_math_sign()](self.get_temp_num(), self.get_entry_num())) ) self.ui.lbl_temp.setText(temp + self.remove_trailing_zeros(entry) + ' =') self.ui.le_entry.setText(result) return result
Если я правильно понял, где это место в коде, то попробуй Calculator().show() или сделать экземпляр класса сначала, потом его показывать, как у меня в коде: window = Calculator() window.show()
Когда считаю что-то и результат есть в le_entry, затем хочу использовать еще одну операцию значение поля lbl_temp не меняется на значение le_entry. Почему так код писал как в видео?
Братан помоги, когда я делаю лямбду у меня вылезает invalid Syntax, и в основном редакторе питона красным выделяет скобку перед числом тоесть - add_digit('0')), и скобку после дигит подсвечивает красным, я не понимаю чё делать
Автор подскажи пожалуйста как ты на моменте 1.34 с кнопками копировал строчку не выделяя ее и потом одновременно изменял btn_0 и 0 в конце строки на 1-9 (я имею ввиду что я сначала менял в btn_0 на 1 и потов в конце строки 0 на 1, а ты сразу менял в 2х местах цифру, подскажи пожалуйста как?)
Прога никаких ошибок не выдает, но почему то нет связки между калькулятором и кодом в IDE. То есть по сути делаю те же манипуляции, как и ты. Но после, ТЫ - можешь зайти и проверить, как изменился калькулятор после очередного условия, а Я - не могу. У меня кнопки не нажимаются и не выдают результат, как в самом начале 1 урока, когда мы еще и не начинали кодить. Крч чет с привязкой, как я понял. Но как это решить...
0:23 в этом и прошлом видео делал всё как надо, но после того как запустил код вышла ошибка: Value error: source code string cannot contain null bytes Помоги пожалуйста
Скорее всего после конвертации файла ресурсов и интерфейса (files.qrc и design.ui) у тебя получились питоновские файлы с кодировкой UTF-16, а нужен юникод UTF-8. В конце прошлого видео я про это рассказывал.
@@user-dt2sp1ot4w у меня такая ошибка была только из-за неправильной кодировки. Я не думаю, что тебе нужно все переделывать, просто еще раз прогони в терминале конвертации.
@@shtoshpython Спасибо! Вот только правильно ли поменял? drive.google.com/file/d/15QktlIfbgvJQbNf__bqej0BCQmOOoGJ5/view?usp=sharing drive.google.com/file/d/15HWo69PTNXhd5gJjUwG5REaCoK38pUvT/view?usp=sharing
В чем проблема загуглить? Сам я так не делал, не нужно было. Почитай эти ссылки. stackoverflow.com/questions/10797930/python-how-do-i-remove-the-window-border-i-have-imported-ui-from-qt-into-pyth www.geeksforgeeks.org/pyqt5-how-to-hide-the-title-bar-of-window/
Привет, это снова я! У меня при запуске кода появляется ошибка Traceback (most recent call last): File "C:\Users\andre\PycharmProjects\pythonProject\main.py", line 265, in window = Calculator() File "C:\Users\andre\PycharmProjects\pythonProject\main.py", line 25, in __init__ self.entry = self.ui.le_entry AttributeError: 'Ui_MainWindow' object has no attribute 'le_entry'. Подскажи, пожалуйста, как это решить
привет значит модуля нет с именем "design" :) Посмотри, как у тебя называется файл дизайна. Скорее всего, ты опечатался при вводе в терминал. Должно быть design.py. Еще проблема может быть в расположении файла, он должен быть в той же папке, что и main.py.
@@shtoshpython File "c:\Users\Andrew\Desktop\Программирование\Python\Моё\Калькулятор\Programm.py", line 15, in self.ui.btn_2.clicked.connect(lambda: self.add_digit('2')) AttributeError: 'Calculator' object has no attribute 'add_digit'
@@shtoshpython Так. Я немного подумал и понял, что у меня не работает из-за того, что мы используем процедуру до того как задаём. Переделал твой код, теперь заработало, если будут ещё проблемы - напишу)
@@soinbv6300 ой, друг, нашёл когда писать)) Уже давно удалил код, ну, по-моему, суть была в том что мы вызывали какую-то функцию до ее объявления и программа на это ругалась
File "e:\kakos\another\project\Programming\calculator\main.py", line 3, in from PySide6.QtWidgets import Qapplication, QMainWindow ImportError: cannot import name 'Qapplication' from 'PySide6.QtWidgets' (E:\kakos\program\PYTHON\lib\site-packages\PySide6\QtWidgets.pyd)
Посмотри еще раз внимательно. Можешь посмотреть код на гитхабе, правда, я его уже существенно изменил, но ты можешь найти старый коммит: github.com/lesskop/shtosh-calculator/blob/master/shtosh-calculator/app.py
Появилась еще одна проблема, не понимает синтаксис "->" Вот что пишет: "line 55 def remove_trailing_zeros(num: str): -> str: SyntaxError: invalid syntax" ruclips.net/video/z5WbSgIJU_s/видео.html
Драствуйте, столкнулся с проблемой Traceback (most recent call last): File "D:\python\программы\calculator\main.py", line 3, in From PySide6.QtWidgets import QApplication, QMainWindow ImportError: DLL load failed while importing QtWidgets: не найден указанный модуль. Можете подсказать, в чем причина, и как ее решить
"This application failed to start because no Qt platform plugin could be initialized" - не могу найти ответ как решить ету проблему вся инфа в гугле по PyQt5
Да я понял по статистике, что это неинтересно большинству. Можете просто пройти весь курс на sqlbolt.com, мне он очень нравится. Хорошая выжимка по основным командам и закрепление на практике. Ну а дальше уже смотрите и пробуйте конкретные базы данных - с питоном очень часто работодатели требуют знание PostgreSQL.
Ребят, подскажите пожалуйста, почему у меня при запуске калькулятора вместо интерфейса вылазит пустое белое окно с названием python. В чем может заключаться проблема?
Столкнулся с такой же проблемой... Много чего перепробовал, а в итоге оказалось, что причина была в банальной опечатке при инициализации класса Calculator. После того, как исправил "__int__" на "__init__" все заработало как надо
Хай, у меня такая же проблема. Сидел чесал репу пол часа, а в итоге всё свелось к тому что я написал в классе __init_ без 2ого подчеркивания в конце, исправил на __init__ и всё заработало.
self.ui.le_entry.SetText(btn_text) AttributeError: 'PySide6.QtWidgets.QLineEdit' object has no attribute 'SetText' Понимаю что видео 2 года, но помогите плиз
удалить пайтон и впасть в депрессию, второй вариант - открыть гугл и найти на англоязычных форумах решение, ну и третий - не писатт на сложных фреймворках, когда ты масленок. изучи ткинтер за пару дней и напиши что то подобное, потом иди дальше
Держу в курсе. В новом Python 3.10 вместо -> Union[int, float] можно написать -> int | float и не импортировать ничего из typing.
Еще чуток подправил код, избавился от передачи аргументов в add_digit, add_temp и math_operation. Можно увидеть в статье на Хабре. Всё лежит на GitHub. 3 часть в процессе.
@@shtoshpython немного новичок в этом всем, нужен совет, как создать exe файл так, чтобы он открывался на других компьютерах?
@@АнтонЧигирь-я8к собираюсь сделать видео позже об этом. Посмотрите про библиотеку Nuitka.
@@АнтонЧигирь-я8к есть несколько библиотек, еще есть PyInstaller
Питон ругается и советует сделать
from __future__ import annotations
from desing import Ui_MainWindow
SyntaxError: source code string cannot contain null bytes
что это значит
Благодарочка за видос! Удачи каналу🙂
Реально офигенный канал, жаль в поиске не выдаёт (видео про GUI когда искал). Но я очень рад что нашёл тебя.
Благодарю! Первое видео с дизайном хорошо выдает в поиске, вижу по тегам через специальное расширение в хроме, а вот второе и третье уже никому не нужны :)
благодарю за хорошую музыку на фоне
Классное видео. Жду продолжения
А что делать если на 5 строке где написана design появляется ошибка по типу (No module named ‘design’)?
У меня была подобная ошибка. Скорее всего, проблема в том, что файл "design" был не в проекте. Возможно вы запускали файл отдельно от других частей программы
кодировку design и files поменяй на 8
@@pvtkd а как объединить, мне выдает line 8 class calculator(QmainWindow), как объединить проекты ?
У меня появился вот такая проблема:
Я списывал код из видео почти точь в точь , но терминал говорит мне что float нельзя , а точнее невозможно переформировать в string:
n = str(float(num))
ValueError:could not convert string to float
Списывал я здесь 4:00
0:23 При запуске программы выходит такая ошибка, какое приложение нужно переустановить?:
This application failed to start because no QT platform plugin could be initialized. Reinstalling the application may fix this problem.
Не знаю будет ли мой ответ полезным, ведь прошло много времени.
Я в начале кода написал, что-бы он эти plugins находил в папке, у меня PySide 2 и Qt designer 5 поэтому код может отличаться от современных версий
import os
import PySide2
dirname = os.path.dirname(PySide2.__file__)
plugin_path = os.path.join(dirname, 'plugins', 'platforms')
os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path
print(plugin_path)
Он потом должен написать путь к папке если всё получилось
, либо их можно засунуть в нужную папку, но это уже в интернете ищи
Подскажите что делать Traceback (most recent call last):
File "C:\Users\tashe\PycharmProjects\Gui\main.py", line 4, in
from design import Ui_MainWindow
ModuleNotFoundError: No module named 'design'
была такая ошибка. исправил её проверив код и заметив в нём ошибки
0:10 что надо импортировать?
File "C:\Users\79061\PycharmProjects\calculator.py", line 7, in
from design import Ui_MainWindow
SyntaxError: source code string cannot contain null bytes
Как фиксить?
Попробуй удалить 7 линию,
Давай продолжение!
Всё будет, нужно немного подождать : )
0:25
Ошибка:
Traceback (most recent call last):
File "C:/Users/Администратор/Desktop/Калькулятор/main.py", line 21, in
sys.exit(app.exec())
AttributeError: 'PySide6.QtWidgets.QApplication' object has no attribute 'exec'
Как её решить?
Здравствуйте! У меня проблема, когда я запускаю программу, выскакивает окно с ошибкой:
"This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem."
Первый раз пишу программу с интерефейсом, помогите, пожалуйста. Ничего не помогает..(
нашел решение, если нет то я подскажу
@@Mema817 нашел, написал другую программу)
@@Mema817 Мне помоги
Traceback (most recent call last):
File "c:\Users\alex1\Desktop\Calculet\main.py", line 16, in
window = Calculator()
File "c:\Users\alex1\Desktop\Calculet\main.py", line 11, in __init__
self.ui.setupUi(self)
File "c:\Users\alex1\Desktop\Calculet\desing.py", line 16, in setupUi
MainWindow.setMinimumSize(QtCore.QSize(350, 550))
TypeError: 'PySide6.QtWidgets.QWidget.setMinimumSize' called with wrong argument types:
PySide6.QtWidgets.QWidget.setMinimumSize(QSize)
Supported signatures:
PySide6.QtWidgets.QWidget.setMinimumSize(PySide6.QtCore.QSize)
PySide6.QtWidgets.QWidget.setMinimumSize(int, int)
@@Mema817 мож подсказать?
@@nezeritsky9386 там нужно было библиотеку добавить в папку, честно говоря уже и не помню что и куда, но на RUclips есть решение, в поисковик вбей свою ошибку.
Что делать если в терминале пишет:
PS C:\Users\vova2)\OneDrive\Рабочий стол\project & „C:/Program Files/Python312/python.exe” „c:/Users/vova2/OneDrive/Рабочий стол/project/main.py”
Traceback (most recent call last):
File “c:\Users\vova2)\OneDrive\Рабочий стол\project\main.py”, line 6, in
from design import Uk_MainWindow
SyntaxError: source code string cannot contain null bytes
PS C:\Users\vova2\OneDrive\Рабочий стол\project>
Я если что новичок и плохо понимаю
Пишу код через Visual Studio Code
Справился с этим?
Композиция Fly me to the moon
В конце видео
Мне очень понравилась
Но я не могу её найти
То что вы оставили в описании под видео, я смотрел. Но там нет этой композиции.
А в поиске в интернете я смог найти только в исполнении Френка синатры.
Подскажите, как найти именно эту песню? Как у вас на видео
Сам уже не помню, где нашел
@@shtoshpython жаль
мда, походу я не смогу сделать даже калькулятор
походу тебе не надо переписывать чужой код в слепую, не понимая, что делает автор, используя не самый простой фреймфорк))
@@kudras3r170согласен, изучать сразу самую лучшую библиотеку без базовых знаний ткинтера не лучшее решение
есть ли разница в логике работы между PyQt5 и PySide6 ?
В логике работы разница почти незаметна. Самое главное отличие в лицензировании.
а подскажите пожалуйста, а как открыть фотку для backspace?
в коде
08:50 - показал? нигде не увидел в этом видео. у меня знак не меняется, если на другой тыкать
Вероятно причина в обновлениях, но в точности повторяя за тобой (0:32) выдает ошибку TypeError: Ui_MainWindow.setupUi() missing 1 required positional argument: 'MainWindow'. На гите смотрел, файлы идентичны, но ошибку выдает. Все файлы находятся в одном месте.
Такая же проблема сейчас. Ты нашел решение?
@@jmonix + у меня так же
Кнопки никак не реагируют на нажатие, ошибок не выдает, кто ни будь сталкивался с подобной проблемой?
Ты соединил метод add_digit с кликом по кнопке цифры?
что делать File "D:\Calculator\main.py", line 18, in
self.ui.btn_2.clicked.connect(lambda: self.add_digit('2'))
AttributeError: 'Calculator' object has no attribute 'add_digit и так со всеми кнопками
Я тоже не понимаю
там вроде с заглавной буквой лямбду нельзя писать
@@bloodmoon942 ну ты вовремя
ModuleNotFoundError
No module named 'PySide6' делаю все как на видео, но почему-то вылезает эта ошибка
Учитесь гуглить. У вас не установлена библиотека PySide6. Возможно, вы создали виртуальную среду, а запускаете системным интерпретатором.
Очень информативное видео, но я не могу понять, что за стрелки идут после названия функции? В интернетах ничего не нашел, не могли бы вы скинуть ссылку на документацию по этим "стрелочкам"?
я тоже их не понимаю. хотелось бы ссылку на документацию или краткое пояснение.
это анотации, нужны только для лучшей читабельности кода, на сам процесс интерпретации никак не влияют
Ребят подскажите на 2:12 не включається калькулятор так как пишет две ошибки: unresolved references 'QMainWindow' unresolved references 'QApplication' , что делать ?
а по каким данным , видео или статьям и книгам/курсами ты все это учил? можешь помочь? желание есть , а куда и что не знаю , ибо инфы слишком много и я теряюсь
Сначала прочитай первую часть книги Изучаем Python: программирование игр, визуализация данных, веб-приложения. 3-е изд. | Мэтиз Эрик
Дальше посмотри уроки от selfedu по питону, ну а дальше его же курс по ООП в python
Дальше - можешь изучать QT для интерфейсов и библиотеки. В принципе, всё
Привет, спасибо за видос! ) А, какая Тема у тебя в PyCharm?
Привет. Плагины: Material Theme UI + Atom Material Icons, тема - Material Darker
1.46 дело в том что код не будет работать ведь не найдет значения le_entry ,все потому что видимо pyside поменялось если у вас такие проблемы с le_entry то просто поменяйте все это на lne
lne тоже не работает
@@xxenessy возможно сама строка где пишется это lne неправильно построена
Респект автору за креатив. Я только постигаю разработку на пайтон и столкнулся с такой проблемой. Метод get_math_sign , который из строки типа ->(число знак) должен получить получить последний знак методом self.ui.lbl_temp.text().strip('.').split()[-1] как показано в ролике. Почему-то возвращает ту же строку. Может у меня руки кривые, но я так не допер почему нельзя просто использовать что-нить типа self.ui.lbl_temp.text()[-1] , чтоб вытащить знак?
Точно не помню, почему используется разделение по точке. Возможно, есть ситуации, когда это нужно. То есть в обычных случаях возвращается та же строка, но бывают исключения, для которых я дописал строковые методы.
Добрый день!
Кнопка не реагирует на метод calculate(), не могу найти ошибку. Подскажите, что не так?
def calculate(self) -> Optional[str]:
entry = self.ui.le_entry.text()
temp = self.ui.lbl_temp.text()
if temp:
result = self.remove_trailing_zeros(
str(operations[self.get_math_sign()](self.get_temp_num(), self.get_entry_num()))
)
self.ui.lbl_temp.setText(temp + self.remove_trailing_zeros(entry) + ' =')
self.ui.le_entry.setText(result)
return result
Такая же ошибка, нашёл решение?
Спасибо
Кто знаком с ошибкой TypeError: Calculator.show() missing 1 required positional argument: 'text'
Если я правильно понял, где это место в коде, то попробуй Calculator().show() или сделать экземпляр класса сначала, потом его показывать, как у меня в коде:
window = Calculator()
window.show()
Когда считаю что-то и результат есть в le_entry, затем хочу использовать еще одну операцию значение поля lbl_temp не меняется на значение le_entry. Почему так код писал как в видео?
Как будто в функции math_operation проверка просто проскакивает
Проверил, все работает. Смотрите методы add_temp и math_operation на гитхабе: github.com/lesskop/shtosh-calculator/blob/master/main.py
Братан помоги, когда я делаю лямбду у меня вылезает invalid Syntax, и в основном редакторе питона красным выделяет скобку перед числом тоесть - add_digit('0')), и скобку после дигит подсвечивает красным, я не понимаю чё делать
посмотри третий видос или гитхаб, я там убрал лямбду
Автор подскажи пожалуйста как ты на моменте 1.34 с кнопками копировал строчку не выделяя ее и потом одновременно изменял btn_0 и 0 в конце строки на 1-9 (я имею ввиду что я сначала менял в btn_0 на 1 и потов в конце строки 0 на 1, а ты сразу менял в 2х местах цифру, подскажи пожалуйста как?)
Дублировал строку (в PyCharm Ctrl + D) и ставил мультикурсор, зажимая Alt. Вообще переписал компактнее с getattr(), можешь посмотреть на гитхабе.
@@shtoshpython благодарю, а на гитхабе боюсь я ничего не пойму я только начал изучать пока особо ничего не понимаю
'+': add(),
^^^^^
TypeError: add expected 2 arguments, got 0
че делать
Прога никаких ошибок не выдает, но почему то нет связки между калькулятором и кодом в IDE. То есть по сути делаю те же манипуляции, как и ты. Но после, ТЫ - можешь зайти и проверить, как изменился калькулятор после очередного условия, а Я - не могу. У меня кнопки не нажимаются и не выдают результат, как в самом начале 1 урока, когда мы еще и не начинали кодить. Крч чет с привязкой, как я понял. Но как это решить...
0:23 в этом и прошлом видео делал всё как надо, но после того как запустил код вышла ошибка: Value error: source code string cannot contain null bytes
Помоги пожалуйста
Скорее всего после конвертации файла ресурсов и интерфейса (files.qrc и design.ui) у тебя получились питоновские файлы с кодировкой UTF-16, а нужен юникод UTF-8. В конце прошлого видео я про это рассказывал.
@@shtoshpython они сразу были в UTF 8 короче завтра сделаю с начала
@@user-dt2sp1ot4w у меня такая ошибка была только из-за неправильной кодировки. Я не думаю, что тебе нужно все переделывать, просто еще раз прогони в терминале конвертации.
У меня выходит вот такая ошибка: "line 5, in
from design import Ui_MainWindow
ValueError: source code string cannot contain null bytes"
Поменяйте кодировку files_rc.py и design.py на UTF-8
@@shtoshpython Спасибо! Вот только правильно ли поменял? drive.google.com/file/d/15QktlIfbgvJQbNf__bqej0BCQmOOoGJ5/view?usp=sharing
drive.google.com/file/d/15HWo69PTNXhd5gJjUwG5REaCoK38pUvT/view?usp=sharing
в ссылке скриншоты
А все разобрался!!! Спасибо ДРУЖИЩЕ!!! Ура!
Что делать если когда добавляешь временное выражение выдает ошибку, что btn_add не существует, хотя я написал все в точности как у тебя
Я переименовал btn_plus в btn_add, забыл упомянуть. Посмотри в файлах дизайна как у тебя называется кнопка с плюсом
QLayout: Attempting to add QLayout "" to Calculator "MainWindow", which already has a layout. ЗБС с первой же компиляции ошибка, сиди гули теперь
Я так и не понял, как добавить код в кнопку (
а ты не знаешь как в pyside6 убрать системные границы окон, a?
В чем проблема загуглить? Сам я так не делал, не нужно было. Почитай эти ссылки.
stackoverflow.com/questions/10797930/python-how-do-i-remove-the-window-border-i-have-imported-ui-from-qt-into-pyth
www.geeksforgeeks.org/pyqt5-how-to-hide-the-title-bar-of-window/
А вот как допустим добавить квадратный корень, можешь пример привести?
Не поверишь, руками.
Привет, это снова я! У меня при запуске кода появляется ошибка
Traceback (most recent call last):
File "C:\Users\andre\PycharmProjects\pythonProject\main.py", line 265, in
window = Calculator()
File "C:\Users\andre\PycharmProjects\pythonProject\main.py", line 25, in __init__
self.entry = self.ui.le_entry
AttributeError: 'Ui_MainWindow' object has no attribute 'le_entry'.
Подскажи, пожалуйста, как это решить
Скорее всего, ты по-другому назвал Line Edit, посмотри в Qt Designer
глупый вопрос но прога не видит в коде ошибок но не выводит + в поле
почему у меня просто белое окно вместо калькулятора?
Traceback (most recent call last):
File "e:\progs\Calculator\main.py", line 104, in calculate
str(operations[self.get_math_sign()](self.get_temp_num(), self.get_entry_num()))
KeyError: '8+'
короче там где обюявляли кнопки и цифры там '+' вот так стоит нужны пробелы по краям ' + ' и так для каждого мат знака
@@Jeremy-n1g ебать, если сработает тебе грамота
@@Jeremy-n1g мужик ты знаешь ты стал героем в моих глазах, я даже не знаю как это сработало но оно сработало чувак спасибо
@@Jeremy-n1g чел, реально герой
@@VictorYkynin спасибо брат)
Добрый день.
даже после добавление window.show() не выводит ничего на экран, в чем может быть ошибка?
c этим разобрался, теперь выдает пустое окно
с пустым окном разобрались уже?
@@shtoshpython да, благодарю за уроки!
@KIZU не помню точно, но проблема была в Qt designer, надо было сохранить окно, которое мы делаем, а потом уже запускать в питоне
@KIZU Я пока что нет, помоги мне пожалуйста. Читаю коменты, но ответ найти сложно.
привет, значит, я пишу - from design import Ui_MainWindow
а он мне значит пишет - Нет модуля с именем "design"
я значит хочу спросить, почему?
привет значит модуля нет с именем "design" :)
Посмотри, как у тебя называется файл дизайна. Скорее всего, ты опечатался при вводе в терминал. Должно быть design.py. Еще проблема может быть в расположении файла, он должен быть в той же папке, что и main.py.
@@shtoshpython ну я значит понял, значит спасибо
@@whythattt4076 ну ты значит обращайся, значит пожалуйста
Привет, друг, очень круто всё объясняешь, но проблемка - программа не понимает откуда мы взяли add_digit после написанного кода из 01:40
я не понимает откуда ты взяли такой формулировка вопроса. Напиши, пожалуйста, какая конкретная ошибка выходит, тогда смогу помочь. Но это не точно.
@@shtoshpython File "c:\Users\Andrew\Desktop\Программирование\Python\Моё\Калькулятор\Programm.py", line 15, in
self.ui.btn_2.clicked.connect(lambda: self.add_digit('2'))
AttributeError: 'Calculator' object has no attribute 'add_digit'
@@shtoshpython Так. Я немного подумал и понял, что у меня не работает из-за того, что мы используем процедуру до того как задаём. Переделал твой код, теперь заработало, если будут ещё проблемы - напишу)
@@end2395 Что именно ты там переделал? Никак не могу понять.
@@soinbv6300 ой, друг, нашёл когда писать)) Уже давно удалил код, ну, по-моему, суть была в том что мы вызывали какую-то функцию до ее объявления и программа на это ругалась
не запускается у меня main.py с qt дизигниром почему то.... помоги
сейчас на картах погадаю, какую ошибку тебе показывает интерпретатор, тогда помогу.
сиди и думай
раньше вообще говорила что ошыбка в первой строке
@@kakosic9355 информативно
@@shtoshpython что , я отправил ответ с ошыбкой а он удалился, Боже прости господи друг
File "e:\kakos\another\project\Programming\calculator\main.py", line 3, in
from PySide6.QtWidgets import Qapplication, QMainWindow
ImportError: cannot import name 'Qapplication' from 'PySide6.QtWidgets' (E:\kakos\program\PYTHON\lib\site-packages\PySide6\QtWidgets.pyd)
Что делать? Не работает 0 се и с, хотя такой же код
Посмотри еще раз внимательно. Можешь посмотреть код на гитхабе, правда, я его уже существенно изменил, но ты можешь найти старый коммит: github.com/lesskop/shtosh-calculator/blob/master/shtosh-calculator/app.py
Блин, не понял больше половины кода
Появилась еще одна проблема, не понимает синтаксис "->"
Вот что пишет:
"line 55
def remove_trailing_zeros(num: str): -> str:
SyntaxError: invalid syntax"
ruclips.net/video/z5WbSgIJU_s/видео.html
@staticmethod
def remove_trailing_zeros(num: str): -> str:
Может где то не так написал?
@@TALGAlll если пишете аннотацию функций, то не нужно писать двоеточие после параметров, только в конце
def remove_trailing_zeros(num: str) -> str:
@@shtoshpython Как же не смог до глядеть свою ошибку! 😅 Спасибо! 🙏🙏🙏
8:40 у меня почему то не работает (
Драствуйте, столкнулся с проблемой
Traceback (most recent call last):
File "D:\python\программы\calculator\main.py", line 3, in
From PySide6.QtWidgets import QApplication, QMainWindow
ImportError: DLL load failed while importing QtWidgets: не найден указанный модуль.
Можете подсказать, в чем причина, и как ее решить
Решил? У меня просто такая же тема
Тоже самое
а как он скрипт в редактор добавил?
"This application failed to start because no Qt platform plugin could be initialized" - не могу найти ответ как решить ету проблему вся инфа в гугле по PyQt5
Не сталкивался, но ответы в гугле практически все твердят, что нужно всё снести и переустановить
Снести только Qt Designer?
@@jemhik9485 Причем здесь дизайнер? Попробуйте переустановить библиотеку PySide6.
pip install --upgrade --force-reinstall PySide6
@@shtoshpython попробовал, та же ошибка выскакивает
@@jemhik9485 Ищите решение.
йо, когда продолжишь sql?
Да я понял по статистике, что это неинтересно большинству. Можете просто пройти весь курс на sqlbolt.com, мне он очень нравится. Хорошая выжимка по основным командам и закрепление на практике. Ну а дальше уже смотрите и пробуйте конкретные базы данных - с питоном очень часто работодатели требуют знание PostgreSQL.
Аска на аве - здоровья маме 😉
Ребят, подскажите пожалуйста, почему у меня при запуске калькулятора вместо интерфейса вылазит пустое белое окно с названием python. В чем может заключаться проблема?
Возможно вы не сохранили файлы в QT Designer и не перенесли их в файл python. Без сохранения программа будет видеть код как до его написания
Столкнулся с такой же проблемой... Много чего перепробовал, а в итоге оказалось, что причина была в банальной опечатке при инициализации класса Calculator. После того, как исправил "__int__" на "__init__" все заработало как надо
Хай, у меня такая же проблема. Сидел чесал репу пол часа, а в итоге всё свелось к тому что я написал в классе __init_ без 2ого подчеркивания в конце, исправил на __init__ и всё заработало.
не может наити btn_add?
я вроде переименовал btn_plus на btn_add
как импортировать модуль??
можно отдельное выдео
Чел ты ahuel? Почему у тебя так мало подписочников, я думал под 500к есть точно, а тут так мало!!1!1!
Я ahuel
мир слюнтяев , всем интереснее смотреть чбд
1000 - 7
1:28
штош
штош
ДЖОДЖООООООООООООООООООООООООООООООООООООООООООООООООООООООО
опять проблема: при попытке добавить кнопки вылезает ошибка:
Traceback (most recent call last):
File "F:\python\calculator\main.py", line 8, in
class Calculator(QMainWindow):
File "F:\python\calculator\main.py", line 14, in Calculator
self.ui.but_0.clicked.connect(lambda: self.add_digit('0'))
NameError: name 'self' is not defined
код таков:
self.ui.but_0.clicked.connect(lambda: self.add_digit('0'))
self.ui.but_1.clicked.connect(lambda: self.add_digit('1'))
self.ui.but_2.clicked.connect(lambda: self.add_digit('2'))
self.ui.but_3.clicked.connect(lambda: self.add_digit('3'))
self.ui.but_4.clicked.connect(lambda: self.add_digit('4'))
self.ui.but_5.clicked.connect(lambda: self.add_digit('5'))
self.ui.but_6.clicked.connect(lambda: self.add_digit('6'))
self.ui.but_7.clicked.connect(lambda: self.add_digit('7'))
self.ui.but_8.clicked.connect(lambda: self.add_digit('8'))
self.ui.but_9.clicked.connect(lambda: self.add_digit('9'))
def add_digit(self, btn_text: str) -> None:
if self.ui.le_entry.text() == '0':
self.ui.le_entry.setText(btn_text)
else:
self.ui.le_entry.setText(self.ui.le_entry.text() + btn_text)
В твоём случае неважно, что идёт после строчки с ошибкой. Ты объявил класс? Создал функцию инициализации ___init__?
@@shtoshpython class Calculator(QMainWindow):
def __init__(self):
super(Calculator, self).__init__()
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.ui.le_entry.SetText(btn_text)
AttributeError: 'PySide6.QtWidgets.QLineEdit' object has no attribute 'SetText'
Понимаю что видео 2 года, но помогите плиз
Решил проблему?
@@scrooge_wayneдаа я смог
пишу py main.py он не чего не выводит, что делать?
удалить пайтон и впасть в депрессию, второй вариант - открыть гугл и найти на англоязычных форумах решение, ну и третий - не писатт на сложных фреймворках, когда ты масленок. изучи ткинтер за пару дней и напиши что то подобное, потом иди дальше