목록전체 글 (24)
CODICT
활성화된 프로그램은 데이터를 램(RAM; Random Access Memory)에 저장합니다. 램은 아주 빠르지만, 비싸고, 일정한 전력 공급을 필요로 합니다. 전원이 꺼질 경우 메모리에 있는 모든 데이터가 사라집니다. 디스크 드라이브는 램보다 느리지만 용량이 넉넉하고, 비용이 싸며, 전원이 꺼지더라도 데이터를 유지합니다. 지금까지 컴퓨터 시스템 개발자들은 디스크와 램 사이의 격차를 줄이기 위해 상당한 노력을 기울였습니다. 프로그래머는 디스크와 같은 비휘발성(Nonvolatile) 장치를 사용하여 데이터를 저장하고 복구할 수 있는 지속성(Persistence)이 필요합니다. 이 게시글에서는 일반 파일, 구조화된 파일, 데이터베이스와 같이 특수 목적에 맞게 최적화된 데이터 스토리지의 각 특징에 대해 살펴봅..
이번 게시글에서는 데이터에 대한 기술을 살펴봅니다. 내용의 대부분은 파이썬에 내장된 다음 데이터 타입입니다. 문자열 텍스트 데이터에 사용되는 유니코드(Unicode) 문자의 시퀀스 바이트와 바이트 배열 이진 데이터에 사용되는 8비트 정수의 시퀀스 1. 텍스트 문자열 텍스트는 대부분의 파이썬 프로그래머에게 가장 친숙한 데이터 타입일 것입니다. 파이썬 텍스트 문자열의 강력한 특징을 살펴보겠습니다. 1.1. 유니코드 지금까지 이 책의 모든 텍스트 예제는 평범하고 오래된 아스키(ASCII) 문자를 사용했습니다. 아스키코드는 1960년대에 정의되었습니다. 그때의 냉장고만한 컴퓨터는 단순한 계산을 잘 수행했습니다. 컴퓨터의 기본 저장 단위는 바이트(Byte)입니다. 바이틑 8비트에 256개의 고유한 값을 저장할 수..
지금까지 문자열과 딕셔너리 같은 자료구조, 함수와 모듈 같은 코드구조를 익혔습니다. 이번 게시글에서는 커스텀 자료구조인 객체(Object)를 배웁니다. 1. 객체란 무엇인가? 이전 게시글에서 본 것처럼, 숫자에서 모듈까지 파이썬의 모든 것은 객체입니다. 하지만 파이썬은 특수 구문을 이용하여 대부분의 객체를 숨깁니다. num = 7을 입력했을 때 7이 담긴 정수 타입의 객체를 생성하고, 객체 참조(Object Reference)를 num에 할당합니다. 이번 게시글을 통해 객체를 직접 만들고, 기존 객체의 행동을 수정하면서, 객체를 자세히 들여다봅시다. 객체는 데이터(변수, 속성(Attribute)이라고 부름)와 코드(함수, 메소드(Method)라고 부름)를 모두 포함합니다. 개체는 어떤 구체적인 것의 유일..
지금까지 데이터 타입에서부터 큰 데이터와 자료 구조를 구축하기까지, 파이썬을 상향식으로 접근했습니다. 이번 게시글에서는 수련한 여러분들이 하산하기 전 마지막 스테이지로, 현실적이고 큰 프로그램을 작성하는 방법에 대해 서술할 계획입니다. 1. 스탠드얼론 프로그램 지금까지는 파이썬의 대화식 인터프리터에서 코드를 작성하고 실행했습니다. >>> print("This interactive snippet works.") #This interactive snippet works. 이제 첫 번째 스탠드얼론(Standalone) 프로그램을 만들어보겠습니다. 컴퓨터에 test.py 파일을 생성하고, 다음 파이썬 코드를 입력합니다. print("This standalone program works!") 파이썬 코드 줄에 >..
지난 게시글에서 많은 데이터 타입과 자료구조에 대한 코드를 살펴봤지만, 코드가 그렇기 길지 않았습니다. 대부분의 코드는 대화식 인터프리터를 사용하는 짧은 코드였습니다. 이제부터는 데이터가 아닌 파이썬 코드를 어떻게 구조화하는지 살펴보겠습니다. 수많은 컴퓨터 언어는 코드의 시작 부분과 끝 부분을 표시하기 위해 키워드 혹은 중괄호와 같은 문자를 사용합니다. 그리고 코드 작성자와 다른 사람이 코드를 좀 더 읽기 쉽도록 일관된 들여 쓰기를 하는 것은 좋은 습관입니다. 심지어 개발 도구에는 코드의 라인을 잘 정리해주는 기능도 있습니다. 파이썬이 설계될 때, 설계자인 귀도 반 로섬은 코드 구분을 위해 괄호를 입력하지 않더라도 들여 쓰기로 프로그램의 구조를 정의하는 것이 충분하다고 생각했습니다. 파이썬은 프로그램의 ..