Python55 [PyCharm] Windows에 파이썬 설치 및 개발환경 구축하기 윈도우에서 파이썬을 개발할 수 있는 환경을 구축해보자. VSCode를 이용해서 파이썬을 개발해도 좋지만 자바 개발을 위하 인텔리제이를 사용했던 개발자라면 파이참(PyCharm)을 설치해서 사용하는게 더 익숙하고 좋을 수 있다. 목차 파이썬 설치 우선 윈도우에 파이썬을 설치하자. 파이썬은 2.x 버전과 3.x 버전을 선택할 수 있다. 2.x 버전은 곧 사용되지 않을 예정이기 때문에 서스테이닝 이슈가 있는 레거시 코드를 관리해야하는 경우가 아니라면 3.x 버전으로 설치하자. 파이썬 설치 파일은 파이썬 홈페이지에서 받을 수 있다. Welcome to Python.org The official home of the Python Programming Language www.python.org 홈페이지에 들어가면 .. 2022. 10. 19. [Python] subprocess 모듈 사용법 및 예제 subprocess는 파이썬 스크립트에서 쉘 명령 등 다른 프로세스를 실행하고 출력 결과를 가져올 수 있게 해주는 라이브러리다. subprocess 모듈은 os.system, os.spawn* 등을 대체하기 위해 만들어졌다. subprocess 사용법 call() 함수 가장 기본적인 서브 프로세스 호출명령이다. 인자로 넘겨진 값들을 이용해 바로 프로세스를 실행한다. 프로세스를 실행하고, 실행한 프로세스의 종료를 기다렸다가 리턴코드를 반환한다. 프로세스가 정상종료했으면 0을 리턴하고, 비정상 종료라면 프로세스가 반환하는 에러 코드를 가져온다. subprocess.call(args, *, stdin=None, stdout=None, stderr=None, shell=False, timeout=None) ar.. 2022. 7. 3. [Python] 파이썬으로 JSON 데이터 다루기 REST API를 사용하는 파이썬 프로그램을 작성할 때 JSON 데이터를 다루는 경우가 많다. 파이썬은 JSON 데이터를 다루기 위해 json 모듈을 내장하고 있다. 이번 포스트에서는 json 모듈을 이용해 JSON 데이터를 다루는 방법에 대해 정리해보겠다. json.loads() - JSON 문자열 파싱 json 모듈의 loads() 함수를 이용해 JSON 문자열을 파싱해 사용할 수 있다. import json json_data = ''' { "mentor": { "Name" : "Tom", "Age" : 20 }, "mentee" : { "Name" : "Eric", "Age" : 13 } } ''' json_obj = json.loads(json_data) print(json_obj) print(".. 2022. 5. 14. [Python] 파이썬 requests 를 이용해서 REST API 호출하기 requests는 파이썬으로 REST API를 호출하는 프로그램을 작성할 때 가장 많이 사용되는 라이브러리다. requests 설치 requests가 설치되어 있지 않다면 파이썬의 패키지 매니저인 pip를 이용해서 설치할 수 있다. $ pip install requests 혹은 $ pip3 install requests 설치가 잘 되었는지 확인해보기 위해 파이썬을 인터프리터 모드로 실행해서 requests 라이브러리를 사용해보자. $ python Python 3.6.8 (default, Nov 16 2020, 16:55:22) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux Type "help", "copyright", "credits" or "license" fo.. 2022. 5. 4. [Python] 'PyInstaller' 설치 및 사용법 - 파이썬 바이너리(실행파일) 만들기 PyInstaller는 파이썬으로 작성된 소스파일(.py 확장자)을 바이너리 파일(예를 들어 .exe 파일)로 만들어주는 프로그램이다. 작성된 파이썬 코드를 실행하기 위해 필요한 라이브러리들을 한번에 묶어서 배포할 수 있고, 파이썬으로 작성된 코드를 사용자로부터 숨기고 싶을 때 PyInstaller의 사용을 고려해볼 수 있다. PyInstaller에 대한 자세한 내용은 PyInstaller 홈페이지에서 확인할 수 있다. (링크 : PyInstaller 홈페이지) PyInstaller 설치 PyInstaller는 파이썬 패키지 관리 도구인 pip를 이용해서 설치할 수 있다. 다음 명령을 실행하면 된다. pip install pyinstaller 만약 pip가 설치되어 있지 않은 상황이라면 pip 설치를 해.. 2021. 5. 11. [Python] 기본 연산자들의 시간복잡도(Big-O) 정리 알고리즘 문제를 풀다보면 작성한 알고리즘의 시간복잡도(Big-O) 값을 신경써야한다. 특히 정렬이나 탐색같은 메소드는 파이썬에서 제공하는 타입의 기본 연산자들을 사용하는 경우가 많다. 이 경우 내장 메소드들의 시간 복잡도를 정확하게 알고 있어야 효율적인 알고리즘을 작성할 수 있다. 파이썬의 기본 타입들과 관련된 메소드들과 시간복잡도를 정리해보았다. 우선 변수에 값을 할당하는 바인딩(Binding)의 시간 복잡도는 O(1)이다. 다시말해서 'a = 1'이라는 할당문은 O(1)의 시간에 종료된다. 마찬가지로 산술연산, 값에 대한 비교 연산들도 모두 O(1)의 시간복잡도를 갖는다. 리스트(list) 타입의 메소드와 시간복잡도(Big-O) 리스트 타입이 제공하는 내장 메소드들과 시간 복잡도를 정리해보자. 리스트.. 2021. 5. 10. [Python] 집합(Set)의 discard()와 remove() 차이점 파이썬에서 사용할 수 있는 자료구조 중에 집합(set) 타입이 있다. 집합 타입에서 특정 엘리먼트를 제거하는 메소드가 두 개 있다. 'discard()' 메소드와 'remove()' 메소드는 모두 집합에서 엘리먼트를 삭제하는 동작이다. 이 두 메소드의 동작 차이점을 이해하고 사용해야 예기치않은 버그를 피할 수 있다. 집합 remove() 집합에서 remove() 메소드를 이용해서 엘리먼트를 제거하는 소스코드를 작성해보자. 예를들어, s = set() s.add(10) s.remove(10) s.remove(10) 10이라는 숫자를 집합에 추가했다가 remove() 메소드를 이용해서 두 번 제거했다. 이 코드를 실행해보면, Traceback (most recent call last): File "test... 2021. 5. 10. [Python] 파이썬 PIP란 무엇인가? 프로그래밍을 할 때, 외부 라이브러리 혹은 패키지를 잘 불러와서 사용하는 것이 중요하다. 파이썬의 장점 중 하나는 다양한 기능들을 지원하는 패키지들이 많다는 것이다. numpy, beautifulsoup 같은 다양한 라이브러리 패키지들이 이미 만들어져 제공되기 때문에 파이썬 프로그래머는 불필요한 동작들을 개발하지 않고, 라이브러리, 패키지를 이용해서 자신들의 비즈니스 로직에 집중할 수 있게 된다. 자바의 경우에는 메이븐(Maven)을 통해 이런 라이브러리를 쉽게 다운로드하고 프로젝트에 포함시킬 수 있다. 파이썬의 경우에는 PIP를 통해 이미 만들어져 있는 패키지들을 다운로드하고 로컬에 설치해서 쓸 수 있다. 파이썬 PIP란 무엇인가? 파이썬의 개발 환경에 패키지 라이브러리를 설치하기 위해서 pip 명령을.. 2021. 5. 10. [Python] 정수형(Integer)과 오버 플로우 자바 혹은 C언어 같은 프로그래밍 언어를 배우다보면 정수형(int) 변수의 오버플로우에 대해서 배우게 된다. 자바와 C언어의 int 변수에 저장할 수 있는 숫자는 상한 값이 있다. 이 상한 값을 넘어버리면 갑자기 숫자가 마이너스 값으로 표기되는 문제가 발생한다. 따라서 큰 값의 정수형 데이터를 다룰 때에는 long 타입을 사용해야한다. 그것보다 더 큰 천문학적인 숫자를 정확하게 다루려면 별도의 알고리즘을 구현해서 사용해야한다. 파이썬에서는 약간 다르다. 파이썬에서는 버전별로 오버플로우 관련 내용이 다르다. 정수형 데이터의 한계값과 타입을 검사해볼 수 있는 코드를 생각해보자. import sys print sys.maxint type(sys.maxint) type(sys.maxint + 1) 이 코드를 파.. 2021. 5. 9. 이전 1 2 3 4 5 6 7 다음