> For the complete documentation index, see [llms.txt](https://study-code.gitbook.io/python-basic/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://study-code.gitbook.io/python-basic/qtpy/pyqt.md).

# PyQt 설치

## 설치

PyQt는 현제 PyQt4, 5 버전이 설치 가능합니다.\
저희는 5버전을 설치하도록 하겠습니다.&#x20;

### windows

터미널 창을 열고 python -m pip install pyqt5==5.9 명령을 실행합니다.

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKQ4i929RgYvPrRr8xt%2F-LKQ4kYd0wqMdVmmc1uy%2Fpyqt4.png?alt=media\&token=3f66f961-093a-45f1-8756-2db0bfc74192)

아래 노란색 글로 18.0 버전이 있다고 upgrade를 하라는 글귀가 보입니다.  \
upgrade는 하셔도 되고 안하셔도 됩니다.&#x20;

이제 설치가 잘되었는지 확인이 필요합니다.

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LLSgpfVFRVMTUesiu1X%2F-LLSnHbSlTYRjkG7Eu2S%2F%EC%84%A4%EC%B9%98%ED%99%95%EC%9D%B8.png?alt=media\&token=810e9ad0-4af7-451a-9516-57b719a616bd)

python을 실행하고 import PyQt5를 했을 때 에러가 발생하지 않으면 설치 완료된 상태입니다.

### macOS

python -m pip install pyqt5

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LLUR8wWHBMbKeL_1MsO%2F-LLURE3_YXWfe-J4DtU6%2Finstall%20pyqt5.png?alt=media\&token=822e9159-c9f3-433e-9951-215810a89b43)

설치가 잘 되었는지 확인하기

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LLUR8wWHBMbKeL_1MsO%2F-LLUROC3T7Pd8bTGpO91%2F%E1%84%89%E1%85%A5%E1%86%AF%E1%84%8E%E1%85%B5%E1%84%92%E1%85%AA%E1%86%A8%E1%84%8B%E1%85%B5%E1%86%AB.png?alt=media\&token=5a7043c5-0125-4ba9-b885-d396bcd886a5)

python을 실행하고 \
\>>> import PyQt5\
\>>> \
에러 없이 이렇게 실행되면 설치는 잘 이루어 졌습니다.

## Hello World&#x20;

이제 파이썬과 QtPy를 이용해 화면에 Hello Python을 출력해보겠습니다.

```python
from PyQt5 import QtWidgets


def main():
    app = QtWidgets.QApplication([])
    window = QtWidgets.QMainWindow()
    label = QtWidgets.QLabel('\tHello World!')
    window.setCentralWidget(label)
    window.show()
    app.exec_()


if __name__ == '__main__':
    main()
```

01  PtQ5 라이브러리를 QtWidgets이라는 이름을 사용하도록 선언합니다.\
05   QApplication(\[])은 GUI를 만들 때 기본 설정과 Control을 관리합니다.\
06  QMainWindow()는 화면에 나타는 창 입니다.\
07  QLabel은 글자를 적는 Widget입니다.\
08  setCentralWidget(label) label 위젯을 가운데 배치합니다.\
09  화면에 창을 나타나게 합니다.\
10  exec\_() 는 본격적으로 코드가 실행됩니다.&#x20;

![실행 결과](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKV6V3ZVKyCSEm58yo0%2Fpyqt7.png?alt=media\&token=53165005-bc31-4c3f-88de-d663f13d1f99)

## &#x20;Qt Designer & QT Creator

Drag and drop 으로 GUI를 만들 수 있는 Qt Designer, QT Creator가 있습니다.\
Qt Creator로 통합되어 개발되고 있습니다. Qt Creator로 통합되며 Windows, Mac 에서 처음 사용하기 위해 환경설정 부분이 많이 까다로워 졌습니다. \
수업에는 Designer나 Creator를 사용하지 못하겠지만 관심있으신 분들은 설치 후 사용해보시기 바랍니다.\
Windows에서는 Qt Designer는 쉽게 설치 가능합니다.  그래서 윈도우용으로 Qt Designer 설치 방법만 알려드리겠습니다.

### 설치

### For Windows

지금까지 파이썬, QtPy 사용에 버전을 지정한 이유는 Qt Designer를 쉽게 설치하기 위해서입니다.\
설치가 안되는 분들은 그동안 설치했던 것들의 버전을 확인해보세요.\
꼭 파이썬 버전이 3.5.2 인지 확인해보세요!!!&#x20;

QT Designer를 사용하기 위한 툴설치를 하겠습니다. \
python -m pip install pyqt5-tools 명령을 실행합니다.

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKQ4i929RgYvPrRr8xt%2F-LKQ51dr3tUG1GyWf6-p%2Fpyqt4.png?alt=media\&token=1d99c880-418f-463b-bbfa-a26c672be555)

설치가 완료 되었습니다.  파이썬 폴더 내부에 desginer.exe파일을 확인합니다.\
{파이썬 설치 경로}\Lib\site-packages\pyqt5-tools\
ex) C:\Python\Python35\Lib\site-packages\pyqt5-tools

![designer.exe 파일 확인](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKQ4i929RgYvPrRr8xt%2F-LKQ5nqc0cDbrLRLmxfV%2Fpyqt6.png?alt=media\&token=f3f91658-0848-45f9-b9cc-49169089b019)

### 실행

![첫 실행 화면](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKV8NXubp39ptT5fsTo%2Fpyqt8.png?alt=media\&token=90b4b1d6-1e1a-4b29-9650-8563b29a6428)

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKVFVFKCNql3nNXIjmc%2F1.png?alt=media\&token=0be14e73-57ef-4b6e-90e0-25632a834dd4)

![Widget 리스트](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKVGtp-EePDv_pqiv0c%2F3.png?alt=media\&token=cdd4e875-5189-4e56-8b9a-1abdf33cf48d)

왼쪽에는 사용할 수 있는 위젯들이 정리 되어있습니다.\
우리는 이 위젯을 적절히 배치하고 사용해서 GUI를 만들게 됩니다.\
Hello World를 적기 위해 Label이라는 위젯을 찾아보겠습니다.

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKVFaRUTxkBRyW51H99%2F2.png?alt=media\&token=a552d67f-e02a-4454-98dd-283ea8921c98)

왼쪽 아래 Lable이라는 것을 Drag해서 MainWindow에 Drop합니다.\
TextLabel을 더블 클릭 하면 글자를 변경 할 수 있습니다.\
그리고 오른쪽에 Label을 꾸밀 수 있는 옵션이 나타나게 됩니다.

![Label이 사용할 수 있는 옵션이 정리 되어있습니다. ](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKVHNgJ-84lcjrqyU6Q%2F4.png?alt=media\&token=344512d6-7ca6-43f2-b39d-a47a1e328715)

글자 크기를 키우고 위치를 변경하겠습니다.

![글자 크기 변경](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKVIK1bzc7HAj84socU%2F5.png?alt=media\&token=c5308a77-00e2-42b4-a4eb-e402268f9409)

위치와 크기는 마우스를 이용하면 됩니다.

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKVIXFIPFyFKSx4UcQ_%2F6.png?alt=media\&token=19652afb-eaa4-43bd-a4f3-1db460bccbc5)

자 이제 이 파일을 파인썬으로 가져와서 실행하는 일만 남았습니다.

저장하기를 누르면 확장자 .ui로 저장합니다. \
저는 저장 경로를 Python 워크스페이스에 designer 폴더를 만들었습니다.\
G:\workspace\python\pyqt\designer

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKV2o407hlA_XOVKhhz%2F-LKVJtRBoXWyHMOIGMVN%2F7.png?alt=media\&token=8044a0c9-502f-44ce-8780-90ccf61db23a)

저장된 .ui파일은 designer에서 수정 가능합니다.\
이제 .ui파일을 파이썬에서 사용할 수 있도록 컴파일 과정이 필요합니다.\
약간 복잡하니 잘 따라오세요\~\~!!!

pyuic5 -x {ui파일 위치.ui} -o { ui파일을 python 으로 변경할 위치.py }\
저의 경우는 pyuic5 -x G:\workspace\python\pyqt\designer\helloworld.ui -o g:\workspace\python\pyqt\designer\helloworld.py

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKZz1sgyICBCtBxCOxu%2F-LK_A6jerobJJ1EOJTEb%2F8.png?alt=media\&token=6fe2ff3a-b37a-4ef8-b4cc-0438314940bc)

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKZz1sgyICBCtBxCOxu%2F-LK_AIW-uGa-0zlJmAER%2F9.png?alt=media\&token=525259a6-8fdd-4591-b6b4-aff39ff31f4d)

파이썬 파일이 생성됨을 볼 수 있습니다. \
helloworld.py 파일을 VSCode에 넣고 실행하거나 더블 클릭으로 실행하면&#x20;

![](https://2648822586-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKJtFns8UmWWxSgNJgC%2F-LKZz1sgyICBCtBxCOxu%2F-LK_AgflJjfPLNFSFAzp%2F10.png?alt=media\&token=5fd291d5-72f6-42bb-8e0d-d88d1f8ff34d)

Designer로 만든 화면이 실행되는 것을 확인 할 수 있습니다.

### For macOS

Python, QtPy5 버전을 맞추기 힘들어 Qt Designer는 설치하지 못하고 (방법을 찾으신 분은 알려주세요) Qt Creator를 설치해야 합니다.

설치 참고용 링크를 올려두겠습니다.

{% embed url="<http://egloos.zum.com/mcchae/v/11285592>" %}

{% embed url="<https://gist.github.com/sigmadream/45050b2efbbd64582487>" %}
