python 25

Programing Language/Python
Pyinstaller을 통해 py 파일을 각 OS에 맞는 실행 파일로 변환

Pyinstaller pyintsaller는 python 애플리케이션과 모든 종속성을 단일 패키지로 묶어서 사용자가 python 인터프리터 또는 모듈을 설치하지 않고 패키지 된 앱을 실행할 수 있도록 도와주는 라이브러리이다. python 3.7 이상부터 지원하며 현재까지 numpy, matplotlib, PyQt.. 등과 같은 많은 주요 python 패키지들 까지도 번들로 잘 제공되고 있다. 주의해야 할 점은, 크로스 플랫폼이 아니라는 점인데, window 기반에서 exe 파일을 만들었다면, window안에서만 돌아가고, window 외의 운영체제인 mac, linux에서는 따로 파일을 만들어 실행하여야 한다. 자세한 부분은 공식문서 보면서 참고하길 바란다. 공식문서 : https://pyinstalle..

FrameWork/PyQT
파이썬 라이브러리 PyQT을 통해 에딧와 리스트 뷰, 위젯 컴포넌트를 다루기

이번 포스팅에서는 입력값을 다루는 에딧 컴포넌트와 어떤 목록을 보여주는 리스트 위젯 컴포넌트에 대해 알아보자. 에딧 컴포넌트 Edit component는 말 그대로 값을 받아 처리하는 컴포넌트이다. Html에 비교하자면 input 태그에 비유할 수 있다. 에딧 박스 컴포넌트에 대한 함수가 있는데 아래는 그중에서 자주 사용하는 함수의 코드이다. """ 위에 edit_text를 정의 했다라고 가정한다. """ # 에딧 박스에 있는 내용을 변수 text에 저장 text = self.edit_text.text() # edit_text 라는 Edit 컴포넌트에 Enter 입력이 들어오면 send() 가 실행 self.edit_text.returnPressed.connect(self.send) # 에딧박스에 있는 ..

FrameWork/PyQT
파이썬 라이브러리 PyQT을 통해 메시지 박스 생성하고 이벤트 연결하기

Pyqt에서는 message box을 새롭게 만들 수 있도록 제공하는 모듈 위젯이 있다. 해당 모듈을 import 해야만 message box을 만들 수 있다. 오늘은 Pyqt에서 메시지 박스를 컨트롤하는 방법에 대해 알아보자. 메시지 박스 Pyqt에서 Message box에도 여러 종류가 있다. 크게는 2가지가 있는데 그 종류는 다음과 같다. 확인 메시지 박스 : 말 그대로 확인용도의 메시지 박스 예/아니요 메시지 박스 : 예/아니요를 선택할 수 있는 메시지 박스 오늘은 이 메시지 박스에 대해서 알아보도록 하자. 확인 메시지 박스 일반적으로 확인하는 원 버튼 Message Box을 작성하는 방법은 다음과 같다. 1. from PySide6.QtWidgets import QMessage을 임포트 한다. ..

FrameWork/PyQT
파이썬 라이브러리 PyQT을 통해 여러 종류의 버튼을 생성하고 이벤트 연결하기

이번에는 PyQT에서 제공하는 버튼 요소에 대한 기법에 대해서 알아보자. PyQT에서 제공하는 버튼의 종류는 여러 가지가 있는데 이번에는 이를 순서대로 정리해서 알아보고자 한다. 해당 순서는 아래와 같다. QT Designer에서 버튼을 생성하고 파이썬 코드로 변환하기 푸시 버튼 라디오 버튼과 체크 박스 QT Designer에서 버튼 생성하고, 파이썬 코드로 변환하기 QT Designer에서 만든 ui파일을 py파일로 만드는 방법은 아래 게시글에서 설명드렸기에 아래 글로 들어가면 해당 내용을 쉽게 확인할 수 있으니 참고 바란다. 티스토리 : https://jheaon.tistory.com/27 파이썬으로 그래픽 인터페이스 제작하기! Pyside6 설치 및 Qt designer로 작업물 .py 파일로 변환..

Programing Language/Python
Selenium 옵션과 이벤트 처리 코드 모음

해당 게시글은 https://jheaon.tistory.com/127 에서 동적 크롤링 부분에서 설명한 "파이썬을 활용한 업무 자동화" 위키 독스의 내용을 정리한 것이다. 파이썬과 request, bs4, selenium4을 통해 웹 페이지 데이터 크롤링하기 일반적으로 인터넷을 이용하면서 웹에 있는 데이터를 가공하거나 사용해야 하는 경우가 빈번하다. 특히 사이트에서 어떤 가격에 대한 데이터를 받아 엑셀로 저장하여 정리하여야 한다는 가, 여 jheaon.tistory.com 01. selenium 4 [TOC] ## 셀레니움 설치 ```{.python} pip install selenium # pip install selenium-wire # 특정 버전 설치 pip insta… www.wikidocs.ne..

FrameWork/PyQT
파이썬으로 그래픽 인터페이스 제작하기! Pyside6 설치 및 Qt designer로 작업물 .py 파일로 변환하기

파이썬을 배우게 되면 창을 뛰우고 그 창에 명령어를 연결시켜 실행되는 프로그램 개발에 대해 관심 생길 수도 있다. 이러한 것에 도움을 주는 라이브러리가 있는데 이번에 소개드릴 "Pyside"라는 파이썬 라이브러리이다. 해당 포스팅 글은 다음과 같은 순서로 진행될 예정이다. Pyside가 뭔지 알아보기 Pyside, Qt designer 설치 및 운영 방법 Qt designer에서 만들어진. ui 파일을. py 파일로 변경하고, 창 띄어보기 파이썬 GUI 프로그래밍 Pyside6 그래픽 인터페이스 만들기 위한 툴을 쉽게 만들기 위해 모듈화 해둔 QT라는 C++용 라이브러리를 Python version 만들어 놓은 라이브러리이다. Pyqt라고도 불리며, Python 3.6 이상부터 지원하고 있다. 해당 라이..

Programing Language/Python
텔레그램 API 사용시 RuntimeWarning: coroutine 'Bot.get_updates' was never awaited 오류 해결방법

에러가 난 상황은요? Python - telegram 연결 도중에 해당 오류가 발생했습니다. 에러 내용을 확인해 보니 코루틴과 await가 있는 것을 보니 비동기 관련 문제인 듯했습니다. 어떻게 해결 하셨죠? 해당 API관련 문서를 ㅊ앚아보니 해당 오류는 2022 말에 telegram bot API update로 asyncio 도입으로 생기는 오류인 것을 확인했습니다. 따라서 예전에 있던 코드를 그대로 사용하고자 하시는 분들은 telemgarm library 이전 버전으로 맞춰서 진행한다면 문제없이 진행할 수 있을 듯 합니다. - python-telegram-bot: v20.0 - asyncio: v3.4.3 만약에 그냥 업데이트된 상태로 코드를 작성하고 싶다면 아래 방법을 참조해주세요 메시지를 보내는 ..

Programing Language/Python
키값이나 환경변수를 관리하기

Python 서버를 개발하거나 API을 활용한 스크립트를 작성하다 보면 중요한 설정값(API키, 알려져선 안 되는 데이터)을 관리하게 된다. 특히 API키나 암호키 같은 경우에 어떠한 처리 없이 Github에 올려버리게 된다면 엄청 큰 피해를 볼 수 있다. 그의 예시로 웹 드라마에서는 AWS키를 담은 코드를 그냥 Github에 올려 관리하게 된 상황을 연출하고 있는데 해당 설정값을 잘못 다루게 된다면 정말 아래와 같은 일이 일어날지 모른다. 참조 : https://www.youtube.com/watch?v=IkMJeO0Sbk4&t=2s 따라서 이런 설정값들을 잘 관리하여야 할 필요성이 있다. 이번에는 이런 설정값들을 어떤 형태로 관리하면 좋을 지에 대해서 설명 하고자 한다. 중요값 관리하기 파이썬에서 중..

Programing Language/Python
컬렉션 객체의 내장 함수 시간 복잡도 모음

요즘 Python이 배우기도 쉽고, 알고리즘 코드를 작성할 때 짧고 생각한 그대로 표현하기에 좋은 언어이기 때문에 코딩테스트에서의 선호도가 점차 증가하고 있는 추세이다. 하지만 코드를 작성할 때, 파이썬 객체의 내장 함수를 사용하면서 해당 함수의 시간 복잡도가 얼마나 걸리는지에 대해서는 잘 알지 못하고 사용하고 있는 부분이 있어 해당 내용을 정리하고자 한다. 아래에 나오는 표는 각 객체에 대하여 내장 함수의 시간 복잡도를 정리한 표이다. 해당 표는 (목적 / 예제 / 시간복잡도 / 기타 사항) 순으로 정리하였다. 파이썬 자료형의 내장 함수 시간 복잡도 정리 List l = list() 로 고려한 다음의 Example이다. Operation Example Big-O Notes Index l[i] O(1) ..