파이썬 9

Programing Language/Python
디스코드 훅을 이용하여 채널에 메세지 보내기

디스코드 웹훅디스코드에 내장되어 있는 웹훅 기능은 자동 메세지들과 데이터를 서버에 있는 텍스트 채널로 쉽게 보내주는 역활을 한다. 쉽게 말하면 해당 API을 이용하여 HTTP POST 요청을 보내면, 해당 내용을 디스코드 텍스트 채널에서 확인 할 수 있다.   웹훅 URL 만들기 해당 과정을 진행하면 해당 텍스트 채널에 대한 웹훅 URL을 얻을 수 있다.      요청 보내기 python으로 requests 패키지를 이용하면 쉽게 디스코드로 메세지를 보낼 수 있다. import requestsheaders = { "Content-Type": "application/json"}json_data = { "content": "안녕하세요?"}requests.post("웹후크 URL", headers=..

Programing Language/Python
Selenium과 Pyinstaller를 이용하여 만든 실행파일 뒤에 검은창이 나올 경우 해결 방법

이번에는 selenium과 pyinstaller을 가지고 나온 exe 파일을 실행시켰을 때, cmd창을 끄는 옵션을 추가했음에도 불구하고 cmd창이 뜨는 오류를 해결하는 방법에 대해 알아보고자 합니다. 오류 selenium을 실행하는 파이썬 코드를 pyinstaller을 통해 exe 파일을 만들어 배포하였습니다. 하지만 exe 파일을 실행할 떄 pyinstaller에서 콘솔이 뜨지 않도록 하는 -w 옵션을 넣어 줬음에도 불구하고 뒤에 cmd(흔히 검은창)이 뜨는 현상이 일어났습니다. 혹시 해당 오류에 대해 다루기전에 pyinstaller 실행 방법이나 옵션에 대해 모르신다면 아래 게시글을 참고 하시면 좋을 듯 합니다. 참고 : https://jheaon.tistory.com/131 파이썬 라이브러리 Py..

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

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
컬렉션 객체의 내장 함수 시간 복잡도 모음

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

Programing Language/Python
윈도우, 맥에서 가상환경을 구성하고 패키지 매니저 pip와 requirements.txt 로 패키지 관리하기

이번에는 윈도우, 맥 운영체제에 가상환경을 구성하고 패키지 매니저인 pip와 requirements.txt을 이용하여 패키지를 어떻게 관리하는지에 대해서 살펴보자. Python에서 가상환경을 사용하는 이유 우리가 여러 프로젝트를 진행하다 보면, 여러 패키지들을 통해서 코드를 작성하고 버전을 관리하며 진행되는 것을 알 수 있다. 만약 A, B라는 프로젝트가 있고, A, B 프로젝트에는 temp_package라는 패키지를 사용하고 있다고 가정한다. 여기서 문제가 생기는데 "A 프로젝트에는 temp_package 버전이 1.1을 사용하여야 작동하고 B 프로젝트에는 temp_package 버전 3.1 이상을 사용하여야 돌아간다."라는 것이다. 현재 우리는 글로벌 파이썬 환경을 사용하기 떄문에 temp_packa..

Programing Language/Python
파이썬의 객체지향 프로그래밍 4가지 특성과 객체 메모리 효율적으로 다루기

객체지향 프로그래밍 객체지향 프로그래밍 (Object Oriented Programming)이란 데이터를 추상화시켜 상태와 행위를 가진 객체로 만들고 그 객체들 간의 유기적인 상호작용을 통해 흐름을 구성하는 프로그래밍 방법을 의미한다. Class : 설계도 instance : 설계도에 찍혀 나온 실체, 하나의 class로 만들어진 instance는 각각 독립적이다. 📢 프로그램을 실제 세상에 가깝게 모델링하는 기법이다. 객체지향 프로그래밍의 4가지 특성 객체지향의 프로그래밍의 4가지 원칙은 다음과 같다. 지금부터는 해당 내용을 하나씩 코드를 들어가면서 살펴보고 마지막으로 컴포지션에 대해서 알아보도록 하자. 추상화 (abstraction) : 불 필요한 것은 숨기고 중요한 정보만을 표현 함으로써 공통의 속..