Itertools, 이터툴즈 Itertools는 파이썬 내장 라이브러리입니다. 주요 기능은 파이썬에서 반복되는 데이터(iterable 한 데이터)를 처리하는 기능을 포함하고 있습니다. 반복 가능한 데이터, 즉 이터러블(iterable)한 데이터는 반복문에서 사용할 수 있는 데이터를 말합니다. 대표적으로 리스트(list), 셋(set), 튜플(tuple)이 있습니다. 즉 이터툴즈는 이터러블한 데이터를 처리하는데 도움을 주는 모듈입니다. 이 중에서 가장 많이 사용되는 5가지 함수에 대해서 알아보겠습니다. accumulate, 누적합 permutations, 순열 product, 곱집합 또는 데카르트 곱 combinations, 조합 combinations_with_replacement, 중복조합 accumu..
만들어 놓은 코드를 재사용하는 방법? 클래스와 객체, 객체 지향 언어의 이해, 객체 지향은 보통 한 학기 정도 배우는 큰 범위의 내용입니다. 예시를 통해 간략하게 알아보겠습니다. 수강신청 프로그램을 작성한다. 어떻게 해야 할까? 수강신청이 시작부터 끝까지 순서대로 작성한다. 수강신청 관련 주체들(교수, 학생, 관리자)의 행동(수강신청, 과목 입력)과 데이터(수강 과목, 강의 과목)들을 중심으로 프로그램 작성 후 연결 두 가지 모두 가능하지만 요즘은 2번 방식이 주류를 이루고 있습니다. 이러한 기법을 객체 지향 프로그램이라고 합니다. 객체지향 프로그래밍 개요 Object-Oriented Programming, OOP 객체는 실생활에서 일종의 물건 속성(Attribute)과 행동(Action)을 가집니다. ..
특징이 있는 정보는 어떻게 저장하면 좋을까? 전화번호부 정보는 어떻게 저장하면 좋을까? 은행 번호표 정보는 어떻게 처리하면 좋을까? 서적 정보는 어떻게 관리하면 좋을까? 창고에 쌓인 수화물의 위치는 역순으로 찾을 때? 자료구조란 각 상황에 맞게 데이터들마다 효율적인 형태로 저장하고 또 불러와야 합니다. 기본적인 파이썬 데이터 구조에 대해서 알아보겠습니다. 파이썬 기본 데이터 구조 스택과 큐(stack & queue with list) 튜플과 집합(tuple & set) 사전(dictionary) Collection 모듈 스택, Stack 스택이란 나중에 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조입니다. Last In First Out(LIFO), 리포 구조라고도 표현하며 Data의 입력을 Push..