전체 글 29

[Python] 파이썬 속도개선

파이썬은 많은 장점들이 있지만 컴파일 언어에 비해 속도가 느리다는 단점이 존재합니다. 파이썬의 속도를 높이기 위해 인터넷에서 찾아보면 "병렬처리" 또는 "Cython" 이라고 하는 내용이 많이 보이는데, 해당 내용은 좀더 고급 스킬을 요구하는 내용들이라 초보 개발자 분들이 지금 바로 접하고 적용하기에는 다소 어려운 내용들이라고 생각됩니다. 이번 시간에는 위에서 언급한 "병렬처리"와 "Cython"을 접하기 이전에 좀더 쉬운 방식으로 파이썬 속도를 개선할 수 있는 방법에 대해 알아보도록 하겠습니다. "반복문에서 간단한 구문 변경으로 속도 개선" 개발을 하다보면 반복문은 필수적으로 다루어야 하는 내용입니다. 파이썬에서 반복문 사용할 떄 loop 내에 . 을 사용하게 되면 속도저하가 발생하게 됩니다. 아래 간..

[Python] 파이썬 ssh 를 통한 업무 자동화

ssh를 사용하는 환경(ex, Unix/Linux 서버)인 경우 파이썬에서 제공하는 "paramiko" 라이브러리를 설치하여 손쉽게 ssh 접속하여 원하는 작업을 자동화하여 사용할 수 있습니다. 물론 기존에도 쉘 스크립트를 통해 어느 정도 자동화가 가능하지만 파이썬에서 제공되는 자동화에 비하면 한계점(ex, 쉘 스크립트 최초 배포, 쉘 수정 시 배포 필요 등) 들이 있어 파이썬을 통한 업무 자동화를 개인적으로는 추천드립니다. 기존에 ssh 접속하여 직접 Command를 실행하였던 작업들 또는 수작업으로 특정 파일을 업로드/다운로드하였던 부분들을 이젠 좀 더 쉽고 고급스럽게 자동화하여 사용이 가능합니다. 이런 기능을 본인의 업무 환경에 맞게 잘 활용한다면 여러분들의 업무 효율성을 조금이나마 높을 수 있을 ..

[Python] 파이썬 postgresql 접속 및 select 하기

파이썬에서 제공해주는 라이브러리 중에서 "psycopg2" 라고 하는 라이브러리를 통해 PostgreSQL을 접속하여 Database 정보 확인이 가능합니다. psycopg2 라이브러리는 pip install 명령어를 통해 쉽게 설치가 가능하며, 저 같은 경우에는 모든 작업을 파이참을 통해 진행하기 때문에 파이참을 통해 psycopg2 라이브러리를 설치하였습니다. 참고로 파이참에서 라이브러리를 설치 하는 경우 File - Setting - Project Interpreter 메뉴에서 해당 라이브러리를 찾아서 설치하였으니 참조 바랍니다. 1. 접속하기 # host : PostgreSQL 서버 IP # dbname : 접속하고자 하는 Database 명 # user : 접속하고자 하는 Database 계정 ..

[Python] pyinstaller로 exe 실행파일 만들때 파일 버전정보 설정

파이썬에서 pyinstaller를 통해 exe 실행파일을 생성하는 경우 별도로 파일 버전을 설정하지 않아도 아무 문제없이 exe 실행파일 생성이 가능합니다. 다만, 소스코드가 길어지고 코드 수정이 잦아지게 되면 결국 exe 실행파일을 여러번 만들게 되는데, 이런 경우 exe 실행파일 관리하는 부분에 있어 어려움이 발생하게 되어 exe 실행파일에 파일버전을 설정하여 좀더 수월한 관리가 가능합니다. 추가적으로 exe 실행파일을 좀더 고급스럽고 전문가적인 느낌을 주기위해서도 exe 실행파일에 파일 버전 정보를 설정하는 것을 개인적으로는 추천해 드리고 싶습니다. pyinstaller를 통해 exe 실행파일 만들때 파일 버전정보를 설정하는 방법은 아래와 같이 프로젝트 경로에 아래의 샘플내역을 txt 파일형태로 저..

[Python] 파이썬 exe 실행파일 만들기

정성 들여 코딩한 결과물을 배포하는 경우 직접 코딩한 소스를 배포할 수 도 있지만, 보안 및 여러 다양한 문제들로 인해 소스 자체를 배포하기보단 exe 실행파일로 만들어서 배포하는 경우가 대부분입니다. 파이썬에서도 exe 파일을 생성할 수 있는 다양한 라이브러리들이 제공되는데, 저 같은 경우는 가장 쉽고 편하다고 알려진 "pyinstaller"를 사용하고 있으며, 이 시간에는 pyinstaller를 통해 exe 파일을 생성하는 방법에 대해 알아보도록 하겠습니다. 우선 pyinstaller를 사용하기 위해서는 당연히 pyinstaller 가 사전에 설치가 되어 있어야 합니다. pyinstaller 설치는 아래와 같이 pip 명령어를 통해 손쉽게 설치가 가능합니다. #pip install pyinstalle..

[Python] 파이썬 데이터 타입 (문자열)

문자열(String)이란 문자, 단어 등으로 구성된 문자들의 집합을 의미 합니다. 예를 들어 아래와 같은 것 들이 모두 문자열에 속하게 됩니다. "Hello Python" "abc" "123" 그러면 이제 문자열을 어떻게 선언하여 사용하는지 그리고 기본적으로 알아야 하고 가장 많이 사용되는 문자열 조작 방법에 대해 알아 보도록 하겠습니다. 1. 문자열 사용 방법 1) 큰 따옴표(")로 양쪽 둘러싸기 - "Hello Python" 2) 작은 따옴표(')로 양쪽 둘러싸기 - 'Hello Python' 크게 위 두가지 방법이 가장 많이 사용되는 방법이며, 만약 두가지를 같이 사용하게 되는 경우가 발생하면, 아래와 같이 작은 따옴표(') 안에 큰 따옴표(")를 포함해서 사용하시면 됩니다. - 'Python is..

[PostgreSQL] Vacuum 이란?

1. Vacuum 이란? Vacuum은 DB의 오래된 영역을 재사용하거나 정리 해주는 프로세스입니다. PostgreSQL에서 특정 Row를 업데이트 할 경우, 디스크 상의 해당 Row를 물리적으로 업데이트하여 사용하지 않고, 새로운 영역을 할당해 쓰게 됩니다. 즉, Update나 Delete 한다고 해서, 해당영역이 자동으로 재사용되거나 사라지지 않는다. 이러한, 오래된 영역을 재사용하거나 정리해주는 명령어가 Vacuum 입니다. 2. Vacuum 종류 1) Vacuum - 삭제 된 데이터나 Update된 데이터의 이전 버전을 마킹 하여 그 공간을 다시 사용할 수 있게 해 주는 기본 Vacuum 입니다. 2) Vacuum Freeze - 삭제 된 데이터만이 아니라 남아있는 데이터에 대해서도 XID를 2로..

Database/PostgreSQL 2020.12.24

[Python] 파이썬 데이터 타입 (숫자)

파이썬에서는 제공해 주는 다양한 데이터 Type 중에서 첫번째로 숫자 Type에 대해 알아 보겠습니다. 기본적으로 파이썬에서 숫자값을 입력하게 되면, 자동으로 해당 값이 정수형인지 실수형인지 Type 을 구분해 주기 때문에 사용하기에 좀더 편리한 부분이 있습니다. 가장 많이 사용되는 숫자 Type의 종류는 아래와 같습니다. 1. int - int는 정수형 입니다. (ex, 0, -1, -2, 1, 2 ...) - 영어로 integer, 파이썬에서는 줄여서 int 라고 표현합니다. - 기본적으로 int형인 경우 소수점을 제외(소수점 뒤는 버림)하고 정수형태의 값을 변환하여 출력 됩니다. 만약 실수형 값을 정수형으로 변환 한다고 하면 아래와 같이 소수점은 제외하고 출력이 되게 됩니다. 2. float - f..

[Python] 파이썬 장단점

IT생활을 하는 대부분의 사람들이라면 파이썬 이라고 하는 언어에 대해 한번씩은 들어 보았을 것입니다. 그 유명하디 유명한 파이썬에 대해 간략히 살펴보고 넘어가도록 하겠습니다. Python 인기 어느정도? TIOBE Index 라고 하는 사이트는 프로그래밍 언어들에 대해 과거부터 현재까지 얼마나 인기 있었는지를 종합적으로 판단하여 순위를 선정하여 제공해 주는 곳입니다. 아래 정보는 2020년 기준 정보이며, 파이썬의 경우 3위에 랭크되어 있는 것을 확인할 수 있습니다. 해당 사이트에 따르면 파이썬의 인기가 어느정도인지 대략적으로 실감을 할 수 있는 부분입니다. 자 그럼 이런 인기 있는 프로그래밍 언어인 파이썬이 도대체 어떤 장점이 있어 많은 사람들의 선택을 받아 이렇게 사용되고 있는지 장/단점에 대해 살펴..