From pyqt5 import uic ошибка

import PyQt5 import uic

SyntaxError: invalid syntax

введите сюда описание изображения

делаю все по видео https://www.youtube.com/watch?v=90xZtB3bbcg, но дальше не могу продвигаться, ибо никак не разберусь как это исправить. Я новичок в программировании, надеюсь на поддержку, спасибо

вот код:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5 import uic


import os

class App(QWidget):
    def __init__(self):
        self.start()
        self.ui.show()

    def start(self):
        self.ui = uic.loadUi('calc.ui')


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = App()
    app.exec_()

задан 19 дек 2020 в 13:45

Squidward's user avatar

11

Просмотрите видео еще раз. Там написано

from PyQt5 import uic

ответ дан 19 дек 2020 в 13:52

mega asda's user avatar

mega asdamega asda

4552 серебряных знака15 бронзовых знаков

20

Так у Вас не с импортом проблема. На скриншоте же написано, что ошибка в отсутствии файла calc.ui, а не в импорте uic. Скорее всего, вы просто забыли поместить файл calc.ui в папку с calc.py

На подсветку импорта красным не обращайте внимания, в PyCharm такое бывает

ответ дан 19 дек 2020 в 14:30

kto's user avatar

ktokto

251 серебряный знак7 бронзовых знаков

3

Для начала в вашем коде сделайте пути относительно скрипта это снимет часть проблем с отслеживанием что где лежит.

from pathlib import Path 
cur_dir = Path(__file__).resolve().parent
print("Директория скрипта", cur_dir)
# ... Ваш код ...
def start(self):
        self.ui = uic.loadUi(cur_dir / 'calc.ui')

Далее в консоли проверьте чтобы путь запуска был = пути скрипта. Текст перед тем где вы набираете команду. В принципе все должно работать. Еще если вы преобразуете calc.ui -> calc.py то это надо отразить и в коде.

Скорее всего Вы просто запутались с путями в системе, а также возможно с тем какой питон использует скрипт системный или виртуальное окружение.

ответ дан 19 дек 2020 в 17:13

Kers's user avatar

KersKers

3,1562 золотых знака7 серебряных знаков16 бронзовых знаков

4

[idnovic@id-lappy ~]0$ maestral-gui 
Warning: PyQt5 is required to run the Maestral GUI. Run `pip install pyqt5` to install it.
Traceback (most recent call last):
  File "/home/idnovic/.local/bin/maestral", line 11, in <module>
    load_entry_point('maestral==0.2b0', 'console_scripts', 'maestral')()
  File "/home/idnovic/.local/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/idnovic/.local/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/idnovic/.local/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/idnovic/.local/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/idnovic/.local/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/idnovic/.local/lib/python3.7/site-packages/maestral/console_script.py", line 30, in gui
    from maestral.gui.main import run
  File "/home/idnovic/.local/lib/python3.7/site-packages/maestral/gui/main.py", line 26, in <module>
    from maestral.gui.settings_window import SettingsWindow
  File "/home/idnovic/.local/lib/python3.7/site-packages/maestral/gui/settings_window.py", line 13, in <module>
    from PyQt5 import QtGui, QtCore, QtWidgets, uic
ImportError: cannot import name 'uic' from 'PyQt5' (/usr/lib64/python3.7/site-packages/PyQt5/__init__.py)
[idnovic@id-lappy ~]1$ pip3 install --user pyqt5
Requirement already satisfied: pyqt5 in /usr/lib64/python3.7/site-packages (5.12.2)

It seems I have the dependency installed but still have an import problem.
Do you have suggestions?

0 / 0 / 0

Регистрация: 08.03.2021

Сообщений: 155

1

12.07.2021, 12:44. Показов 9421. Ответов 4


Студворк — интернет-сервис помощи студентам

Всем доброе утро! Проблема детская,но я всё обыскал,не могу понять-установил питон(PATH отметил),в Pycharm установил интерпретатор,скачал через cmd pyuic5 и проблем нет.Но не могу компилировать ui в py(какие только варианты команд не пробовал).Ошибка одна и та же- «pyuic5-uic» не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

12.07.2021, 12:44

4

Модератор

Эксперт Python

2872 / 1573 / 510

Регистрация: 21.02.2017

Сообщений: 4,197

Записей в блоге: 1

12.07.2021, 12:56

2

FagotPetrova, заходим в папку PyQt5, там в корне лежит нужный exe файл, профит.



0



0 / 0 / 0

Регистрация: 08.03.2021

Сообщений: 155

12.07.2021, 14:57

 [ТС]

3

exe файла там нет,хотя пакет установил через pip.А зачем мне exe?



0



Fudthhh

Модератор

Эксперт Python

2872 / 1573 / 510

Регистрация: 21.02.2017

Сообщений: 4,197

Записей в блоге: 1

12.07.2021, 15:17

4

Лучший ответ Сообщение было отмечено FagotPetrova как решение

Решение

FagotPetrova, вперед читать доки по PyQt5(PySide2) — pyuic(uic) это исполняемый файл который находится в составе пакета.

Добавлено через 40 секунд
И тем более:

Во-первых, какая разница где он располагается, лишь бы работал. Во-вторых, ui-файлы можно использовать и без конвертации:

Python
1
2
3
4
5
6
7
from PyQt5 import uic
from PyQt5.QtWidgets import QMainWindow
 
class MainWindow(QMainWindow):
   def __init__(self):
      super(MainWindow, self).__init__()
      uic.loadUi('mainwindow.ui', self)



0



0 / 0 / 0

Регистрация: 08.03.2021

Сообщений: 155

12.07.2021, 15:28

 [ТС]

5

Только что хотел написать,что понял.Спасибо



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

12.07.2021, 15:28

Помогаю со студенческими работами здесь

«pip» не является внутренней или внешней командой, исполняемой программой или пакетным файлом в pycharm
Добрый день, ломаю голову над ошибкой уже 3 дня! Когда пишу “pip” в cmd — все нормально работает,…

«webpack-dev-server» не является внутренней или внешней командой, исполняемой программой или пакетным файлом
C:pycharmdutyvueapp&gt;npm run dev

&gt; vueapp@1.0.0 dev C:pycharmdutyvueapp
&gt;…

Php не является внутренней или внешней командой, исполняемой программой или пакетным файлом
Не могу запустить программу в cmd. Захожу в каталог, набираю php …php но пишет что php не…

Tasm не является внутренней или внешней командой, исполняемой программой или пакетным файлом
пытаюсь разобраться и ни как не могу понять почему у меня в командной строке при переходе к папке…

Node не является внутренней или внешней командой исполняемой программой или пакетным файлом
Помогите, пожалуйста!!! при любых командах (например, npm install, bower install), в командной…

Telnet не является внутренней или внешней командой, исполняемой программой или пакетным файлом
&quot;telnet&quot; не является внутренней или внешней командой, исполняемой программой или пакетным…

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

Или воспользуйтесь поиском по форуму:

5

This topic has been deleted. Only users with topic management privileges can see it.

  • have an import problem under PyCharm uic is not found
    OS: Ubuntu 20.04

    import sys
    
    from PyQt5 import QtCore, QtGui, QtWidgets, uic
    
    class MainWindow(QtWidgets.QMainWindow):
        def __init__(self, *args, **kwargs):
            super().__init__(*args, **kwargs)
            loadUi("first_test.ui")
    
    app = QtWidgets.QApplication(sys.argv)
    window = MainWindow()
    window.show()
    app.exec_()
    

    PyQt5 5.15.4
    pyqt5-plugins 5.15.4.2.2
    PyQt5-qt5 5.15.2
    PyQt5-sip 12.11.0
    pyqt5-tools 5.15.4.3.2

    Any Ideas

    Thanks

    McAce

  • Hi and welcome to devnet,

    uic is a command line tool, it’s not something you import.

    It might not be completely accurate in the case of PyQt5, see answer below for more details.

    [edit: added more details SGaist]

  • Ah Okay now I understand it all, I was missing this info.

    Thanks

  • @SGaist Hi, if it wasnt meant to be imported. Why is there documentation found here that shows us how to import it?

  • Hi,

    @TheNoodleNator said in import problem under PyCharm uic is not found:

    @SGaist Hi, if it wasnt meant to be imported. Why is there documentation found here that shows us how to import it?

    I learned something new, thanks !
    It’s something that is specific to PyQt5 and quite frankly I have never came across it until now. From a quick look, it does not seem to be documented as public API to be used by Qt applications.
    The main things I found boils down to: python3 -m PyQt5.uic.pyuic mywidget.ui -o mywidget.py
    The standard way to use .ui files is through the QtDesigner module either by using pyuic5 to generate a python file from your .ui file or use of the QUiLoader class. See here for a more detailed explanation.

  • Решил я сделать простенькое приложение-генератор с GUI на PyQt5, но появилась ошибка.

    Вот сам код:

    import sys
    import os
    from PyQt5.QtCore import pyqtSlot
    from PyQt5.QtWidgets import *
    from PyQt5.uic import loadUi
    import random, string
    import time
    
    class p_main(QWidget):
    	def __init__(self):
    		super(p_main, self).__init__()
    		loadUi("uno.ui", self)
    		self.PushButton.clicked.connect(gen)
    
    	def gen():
    		value = 1
    		while value <= amount:
    				code = "https://discord.gift/" + ('').join(random.choices(string.ascii_letters + string.digits, k=16))
    				value += 1
    				self.Label.setText(code)
    
    app = QApplication(sys.argv[:1])
    wind = p_main(QWidget)
    wind.show()
    sys.exit(app.exec_())

    А вот ошибка:

    Traceback (most recent call last):
      File "C:UsersDesmokeDesktop5.py", line 23, in <module>
        wind = p_main(QWidget)
    TypeError: __init__() takes 1 positional argument but 2 were given

    Понравилась статья? Поделить с друзьями:

    Не пропустите эти материалы по теме:

  • Яндекс еда ошибка привязки карты
  • Fr 3130 atego ошибка
  • From pil import image imagetk ошибка
  • Fr 3031 ошибка мерседес
  • From kivy app import app выдает ошибку

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии