본문 바로가기

Python/Python 기초24

Python staticmethod 왜 사용해야할까? Python staticmethod Python staticmethod는 @staticmethod 데코레이터를 사용한 정적 메소드 입니다. 인스턴스 메소드와는 다르게 self 인자를 받지 않는다. 클래스 이름으로 직접 메소드를 호출할 수 있다. 인스턴스 속성에 접근하거나 인스턴스 메소드를 호출할 수 없다. 이런 특징들이 있어서 유틸리티성 메소드를 생성할 때 사용된다고 한다. 그런데 유틸리티성 메소드들은 주로 따로 utils라는 모듈로 빼서 작성하는 경우가 많은데... 클래스 내에서는 왜 staticmethod가 필요할까요? 아래 실습을 통해서 좀 더 자세히 확인해보겠습니다. Playlist 실습 import random import json import hashlib class Playlist: clas.. 2021. 10. 4.
[개발로그 Python] 데이터 구조 - No.6 Python 3.9.5 버전을 사용했습니다. 데이터 구조(Data Structure)란? 데이터 구조는 여러 데이터를 효율적으로 저장하기 위해 하나의 집합으로 데이터를 저장하는 구조(structure) 입니다. 이전에 변수에 숫자나 문자 형태의 데이터 타입을 저장했었는데... 과일들의 집합 처럼 연관된 데이터를 모두 각각 다른 변수로 선언을 해줘야할까요? # 각각 변수로 선언 fruit1 = '수박' fruit2 = '참외' fruit3 = '자몽' fruit4 = '멜론' # 데이터 구조인 리스트를 사용해서 선언 fruits = ['수박', '참외', '자몽', '멜론'] 위의 이미지를 코드화한 내용입니다. 연관된 데이터를 각각 변수로 만들지 않고 데이터 구조 중 하나인 list를 만들어서 하나의 변수.. 2021. 6. 5.
[개발로그 Python] 데이터 타입 - No.5 Python 3.9.5를 사용했습니다. 데이터 타입이란? 아래는 Java의 코드 입니다. // 원시 타입 int number1 = 1; double number2 = 10.1; boolean is = true; // 참조 타입 String word = new String(); 위의 예시와 같이 변수 앞에 붙어 있는 int, double, boolean, String 이 데이터의 타입입니다. 데이터 타입은 컴퓨터가 데이터를 어떻게 다뤄야할지 알려주기 위해 사용되는 표현입니다. 즉 변수의 타입이라고 할 수 있습니다. 데이터 타입은 원시 타입과 참조 타입으로 구분이 됩니다. 원시 타입 int, long, foat, boolean 등 메모리에 값이 저장 위 이미지는 Java의 숫자 타입의 메모리 크기와 표현 가.. 2021. 6. 3.
[개발로그 Python] 변수 - No.4 Python 3.9.5 버전을 사용 변수가 무엇인가? x = 100 y = 20.5 위의 예시 처럼 x 와 y가 변수 입니다. 프로그래밍을 해보지 않아도 x라는 변수는 100이고 y라는 변수는 20.5라는 값으로 사용한다는 것을 알 수 있습니다. 우리는 수학적으로 "=" 등호 기호가 "같다"라는 의미로 배워서 본능적으로 알고 있는거죠. 그래서 만약 "x + y 의 결과가 어떻게 되나요?"라고 질문하면 "120.5 입니다!"라고 당당하게 답할 수 있을 것 입니다. 그런데 프로그래밍에서 등호(=) 기호가 "같다"라는 의미가 아니라 "대입한다"의 의미를 갖고 있습니다. "x + y"와 같은 연산은 "같다"라는 의미로 해석해서 사용해도 큰 문제는 없을 만큼 프로그래밍할 때 변수를 사용하는 것은 쉽습니다. 하지만.. 2021. 6. 2.
[개발로그 Python] IDE 에디터(intellij) 설치 개발환경 구성 - No.3 IDE는 왜 사용하는가? 세탁기 없이 매일 손 빨래해야 된다는 생각해보셨나요? 시간도 오래걸리고 번거롭다는 생각이 드시죠? 실제 개발자들이 개발할 때 IDE(Integrated Development Environment 통합 개발 환경)란 개발자 툴(에디터)을 사용하는 이유도 마찬가지 입니다. 세탁기 없이 손 빨래를 할 수 있는 것 처럼... 개발도 IDE없이 할 수 있습니다. 메모장에 코드를 입력하고 python 인터프리터를 실행시켜 프로그램을 실행 시킬 수 있습니다. 하지만, 코딩하다보면 문법 오류나 오타를 입력할 수도 있고... 여러 python 파일로 나누어 개발하면 파일들을 관리 및 추적하기도 힘들 겁니다. IDE는 이러한 불편한을 해결하고 개발을 빠르고 편리하게 하기 위한 도구로 사용됩니다. .. 2021. 6. 1.
[개발로그 Python] Python 설치하기 MacOS - No.2-2 Python 3.9.5 버전을 사용했습니다. MacOS Python 설치 MacOS도 Python 홈페이지 Downloads 탭에서 MacOS X를 선택하여 버전을 확인할 수 있습니다. Mac OS 버전에 따라 intel installer는 사용할 수 없다고 합니다. universal installer로 설치해줍니다. 설치가 완료되면 Applications 폴더 아래 Python 폴더가 생기는 것을 확인할 수 있습니다. Python 설치 확인 $ python3 -V Python 3.9.5 $ python3 Python 3.9.5 (v3.9.5:0a7dcbdb13, May 3 2021, 13:05:53) [Clang 12.0.5 (clang-1205.0.22.9)] on darwin Type "help",.. 2021. 6. 1.
[개발로그 Python] Python 설치하기 Linux - No.2-3 Python 3.9.5 버전을 사용합니다. Linux Python 설치 Linux 계열의 운영체제 에서는 이미 Python 2나 Python 3가 설치되어 있는 경우가 많습니다. 이번 실습에서는 CentOS 환경에서 Python을 설치하는 실습을 진행해 보겠습니다. $ yum groupinstall 'Development Tools' $ yum install openssl-devel bzip2-devel libffi-devel wget 설치에 필요한 라이브러리들을 사전에 설치해준다. Python 홈페이지에서 설치파일을 받을 수 있습니다. Downloads 탭에서 Linux의 python 버전별 설치파일을 확인합니다. 2021년 06월 01일 기준으로 Stable 버전(안전화된 버전)인 3.9.5 버전의 .. 2021. 6. 1.
[개발로그 Python] Python 설치하기 Windows - No.2-1 Python 3.9.5 버전을 사용합니다. Windows Python 설치 python 홈페이지 Downloads 메뉴에서 Python 설치파일을 받을 수 있습니다. 노란 색으로 크게 되어 있는 Download 버튼을 클릭하면 운영체제에 맞게 알아서 가장 최신 버전을 설치할 수 있지만... 이번 실습에서는 버전을 선택하여 설치하는 방법을 알아보겠습니다. 다른 Python 버전의 Windows를 클릭합니다. 여러 Python 버전을 확인할 수 있는데, 2021년 06월 01일 기준으로 Stable 버전(안정화된 버전)인 3.9.5 버전을 받겠습니다. 자신의 운영체제에 맞는 비트로 Windows installer를 받아줍니다. 시스템 정보는 "내PC 우클릭 -> 속성" 에서 확인 가능합니다. 32bit의 운.. 2021. 6. 1.
[개발로그 Python] 왜 Python인가? - No.1 Programming 언어 선호도 조사 TIOBE : 25개의 검색 엔진의 조회수를 계산하여 인덱싱한 결과를 순위로 매긴 표 입니다. PYPL : 언어의 tutorial이 Google에서 검색되는 빈도를 갖고 분석한 결과를 순위로 매긴 표 입니다. 2021년 05월달을 기준으로 PYPL, TIOBE 인덱스에 각각 1, 2위를 Python이 하고 있습니다. 즉 지금 현재 가장 인기 있는 그리고 사용률이 가장 많이 성장하고 있는 언어가 바로 Python입니다. 그렇다면 왜 Python을 사람들이 사용하려는 것일까요? Python을 사용하는 이유 구글에 검색해보면... 사용하기 쉽다, 여러 다양한 플랫폼에서 사용할 수 있다, 라이브러리나 레퍼런스가 많다, AI나 머신러닝 기술을 사용할 수 있다 등 많은 이유를.. 2021. 5. 31.
파이썬 튜터, 파이썬 코드 시각화 확인하기 좋은 사이트 :: 마이자몽 파이썬 튜터라는 사이트를 알고계신가요? 한번 사용해봤는데 복잡한 코드 내용을 한줄씩 실행시켜 코드의 내용을 시각화해서 보여주는 편리한 툴로 사용할 수 있습니다. 여러 모듈들을 사용하여 어떤 프로젝트의 전반적인 흐름을 확인하기보다는 알고리즘 문제를 눈으로 흐름을 확인할 수 있는 용도로 사용하면 좋을 것 같다는 생각이 드네요. 재귀함수 같은 경우는 보통 머리속으로 생각해서 흐름을 파악하기 쉽지 않자나요? 아니면 매우 복잡한 다중 반복문을 사용하는 경우나... 이런 로직 부분에서 이해가 필요할때 정말 유용한 사이트 인것 같습니다. 파이썬 튜터 Visualize your code and get live help now 링크를 클릭하면 직접 파이썬 코드를 입력하면서 한줄 한줄 확인이 가능합니다. 파이썬 재귀함수 .. 2020. 3. 11.