프로그래밍 관련
파이썬 강좌 11편. 예외 처리(Exception Handling)
파이썬 강좌 11편. 예외 처리(Exception Handling)
2013.12.291. 예외 처리(Exception Handling) 오늘은 예외 처리(Exception Handling)에 대해 알아보려고 합니다. 여기서 '예외(Exception)'란 어떤 것일까요? 우리가 프로그램을 사용하다 보면 예기치 못한 상황으로 에러가 발생하여 비정상 종료되는 경험을 해보신적이 있으신가요? 예를 들어, 프로그램 내에서 존재하지 않는 파일을 열려고 한다던가 피제수를 0으로 나누려고 하는 등 런타임 도중 발생하는 에러를 예외라고 하며, 이는 프로그램의 작업 수행을 막아버리는 존재입니다. 우선 예외가 발생하는 상황을 한번 보도록 하겠습니다. >>> 2013 * (1229/0) Traceback (most recent call last): File "", line 1, in 2013 * (1229/0..
파이썬 강좌 10-2편. 파일 입출력(File I/O)
파이썬 강좌 10-2편. 파일 입출력(File I/O)
2013.12.15파일 입출력(File Input/Output) 오늘은 파일 입출력에 대해서 알아보도록 하겠습니다. 전 강좌에서는 화면에서 출력하고 입력하는 방법을 알아봤다면, 이번에는 파일에 출력하고 입력하는 것을 알아보도록 하겠습니다. 내장 함수 살펴보기 open: 파일 열기 파일을 읽고, 쓰고, 덧붙이는 등 세밀하게 작업을 위해 파이썬에서는 open이란 함수를 지원하는데 이 함수의 기본형은 아래와 같습니다. 파일객체 = open(file, mode) 기본적으로 들어가는 두 인자 중 file이란 인자에는 파일 이름이 이곳에 들어가고, mode에는 파일을 열 때 사용하는 모드를 말합니다. 여기서 파일을 열 때 사용하는 모드란 쓰기 모드, 읽기 모드 등과 같이 파일에 무언가를 쓸때는 쓰기 모드, 무언가를 읽어들일 때는 읽..
파이썬 강좌 10-1편. 입출력(I/O)
파이썬 강좌 10-1편. 입출력(I/O)
2013.12.131. 출력(Output) 오늘은 입력과 출력에 대해서 간단히 알아보도록 하겠습니다. 먼저 출력에 대해서 알아보도록 하겠는데요, 우리는 이미 화면에 무언가를 출력할 때 사용하는 함수는 'print' 함수 라는 것을 알고 있습니다. 이전 강좌에서는 간단히 화면을 출력하는 기능을 담당하는 함수라고 알고 있었지만, 이번에는 더 자세히 파고들어 보도록 하겠습니다.>>> print(3.14) 3.14 >>> print('Hello, World!') Hello, World! >>> t = 'variable' >>> print(t) variable 위 예제 그대로 print 함수에 넘겨주는 인자를 출력하고 있음을 확인하실 수 있습니다. 우리는 문자열과 문자열을 서로 연결하고 싶을때는 공백을 사용해서 연결할 수 있었는데..
파이썬 강좌 9편. 모듈(Module)
파이썬 강좌 9편. 모듈(Module)
2013.11.101. 모듈(Module) 이번에는 모듈(Module)에 대해서 알아보도록 하겠습니다. 파이썬에서의 모듈이란 변수, 클래스, 함수 등과 같은 여러 코드를 한곳에 모아놓은 코드의 모음이라고 할 수 있습니다. 이런 모듈이라는 것을 만들어 놓으면 계속 사용할 수 있으므로 코드의 재사용성을 극대화 시킬 수 있으며, 연관성이 있는 것들을 모듈 단위로 분리하여 효율성을 높일 수 있습니다. 모듈의 장점에 대해서는 차차 알아가보도록 하고, 먼저 모듈을 불러오는 방법부터 알아보도록 하겠습니다. 이 모듈이라는 것을 가져오려면 'import'라는 키워드를 통해 모듈을 불러올 수 있습니다. 아래와 같이 말입니다.import 모듈명 우리가 직접 모듈을 만들어 보기 전에, 파이썬에 기본으로 내장된 모듈을 불러와, 그 모듈의 기능을..
파이썬 강좌 8-4편. 연산자 오버로딩(Operator Overloading)
파이썬 강좌 8-4편. 연산자 오버로딩(Operator Overloading)
2013.11.021. 연산자 오버로딩(Operator Overloading) 이번에는 연산자 오버로딩(Operator Overloading)에 대해서 알아보려고 합니다. 이 연산자 오버로딩이란, 인스턴스 객체끼리 서로 연산을 할 수 있게끔 기존에 있는 연산자의 기능을 바꾸어 중복으로 정의하는 것을 말합니다. 예를 들어보자면, 아래와 같은 경우를 생각해 볼 수 있겠죠? >>> class NumBox: def __init__(self, num): self.Num = num >>> n = NumBox(40) >>> n + 100 Traceback (most recent call last): File "", line 1, in n + 100 TypeError: unsupported operand type(s) for +: 'N..
파이썬 강좌 8-3편. 상속(Inheritance)
파이썬 강좌 8-3편. 상속(Inheritance)
2013.10.271. 상속(Inheritance) 오늘은 클래스의 상속(Inheritance)에 대해 알아보려고 합니다. 상속이란 무엇일까요? 우리가 알고 있는 상속은 사전적 정의에 따르면 "일정한 친족적 관계가 있는 사람 사이에 한 쪽이 사망하거나 법률상의 원인이 발생하였을 때 재산적 또는 친족적 권리와 의무를 계승하는 제도"와 같습니다. 그런데 이 상속이란 개념이 파이썬의 클래스에도 존재합니다. 쉽게 말해서, 부모의 유산을 자식이 물려 받듯이 부모 클래스와 자식 클래스라는 것이 존재하여 부모 클래스의 멤버를 자식 클래스가 물려받을 수 있습니다. 위 그림처럼 상속 관계에 있다고 가정해봅시다. 먼저 사람(Person) 클래스는 부모가 되는 클래스이니 부모 클래스라고 말하고, 근로자(Employee) 클래스는 자식이 되는..
파이썬 강좌 8-2편. 생성자와 소멸자(Constructor and Destructor)
파이썬 강좌 8-2편. 생성자와 소멸자(Constructor and Destructor)
2013.10.271. 생성자(Constructor) 이번에는 생성자와 소멸자에 대해서 알아보도록 하겠습니다. 우선은 생성자부터 알아보고, 그 다음 소멸자에 대해 알아보는 순서로 공부를 할 생각입니다. 클래스라는 개념을 처음 접해보신 분들은 생성자라는 이름이 생소하시겠지만, 이름과 연관지어 생각을 해봅시다. 생성자라고 하면 '무언가 생성할 때 호출되는 녀석', '무언가 생성하기 위해 호출되는 녀석' 등 여러가지 추측을 해볼 수 있습니다. 파이썬의 생성자는 객체를 생성할 때 호출되는 함수로써, 객체 생성 시 초기화 작업을 위해 존재하는 녀석입니다. 생성자라는 녀석이 파이썬에서는 어떻게 표현이 되는지 확인해보도록 합시다.class 클래스명: ... def __init__(self): 문장 ... 위를 보시면 파이썬에는 생성자..
파이썬 강좌 8-1편. 클래스(Class)
파이썬 강좌 8-1편. 클래스(Class)
2013.10.20인스턴스(Instance) 이번에는 객체지향 프로그래밍에서 핵심이 되는 요소 중 하나인 클래스(Class)에 대해서 알아보도록 하겠는데, 그 전에 인스턴스란 개념에 대해 먼저 알아보도록 하겠습니다. 여기서 인스턴스와 객체(Object)는 같은 의미인데, 인스턴스는 클래스에 의해 만들어진 객체를 인스턴스라고 합니다. 이 설명에서 한가지 유추해보자면, 클래스는 인스턴스를 만드는 하나의 틀이라고 볼 수 있습니다. 우리가 앞으로 배울 클래스란 녀석을 통해서 인스턴스를 계속 만들어 낼 수 있습니다. 이제는 한번 클래스가 무엇인지 살펴보도록 합시다. 클래스(Class) 앞에서 인스턴스에 대해서 간단히 알아보았는데, 파이썬에서의 클래스를 간단하게 설명하자면 변수와 함수를 모아넣은 것이라고 할 수 있습니다. 클래스가 ..
파이썬 강좌 7편. 함수(Function)
파이썬 강좌 7편. 함수(Function)
2013.10.151. 함수(Function)오늘은 함수(Function)에 대해 알아보도록 하겠습니다. 파이썬의 함수에 대해 알아보기 전에, 이미 어디선가 함수란 말을 들은 기억이 있지 않나요? 중학교 수학시간에 나온 '함수'는, 우리가 배울 파이썬의 '함수'와 비슷합니다. x의 값을 넣으면, y의 값이 정해지듯이 파이썬의 함수 역시도 값을 함수에 집어넣으면, 함수는 결과값을 되돌려줍니다. 예를 들어서, 어느 특정한 수를 넣으면 그 수의 절댓값을 돌려주는 신비의 상자가 있다고 합시다. 우리가 만약 -2라는 값을 이 상자에 넣으면, 꺼낼때는 2가 되어 나오는 것입니다. 그리고 4라는 값은 역시, 4 그대로 꺼내집니다. 이를 그림으로 나타내보도록 하겠습니다.위의 박스는 어느 수를 넣으면 그 수의 절댓값을 돌려주는 기능을 합..
파이썬 강좌 6편. 반복문(Loop)
파이썬 강좌 6편. 반복문(Loop)
2013.10.101. 반복문(Loop)오늘은 반복문(Loop)이라는 것에 대해 알아보도록 하겠습니다. 반복문, 쉽게 생각하면 이름 그대로 반복에 사용되는 녀석입니다. 파이썬에서 지원하는 반복문에는 조건문이 참인가 거짓인가에 따라 반복을 진행하는 while문이라는 것이 존재하고, 리스트나 튜플 같은 순서형 자료의 요소들을 하나씩 가져오면서 반복을 수행하는 for문이 존재합니다. 이 두 가지에 대해서 간단히 알아볼 계획인데, 비슷한 작업이 수 없이도 반복되는 것을 이러한 반복문을 통해서 간단히 해결할 수 있습니다. 먼저 while문에 대해서 먼저 알아보도록 하겠습니다. 2. while문앞에서 소개한대로 while문은 조건식을 가지는 녀석입니다. 조건식이 참이라면 while문 내부에 있는 블록의 문장을 실행하고, 거짓이면 반..
파이썬 강좌 5편. 조건문(Condition Statements)
파이썬 강좌 5편. 조건문(Condition Statements)
2013.09.241. 조건문(Condition Statements) 이번에는 조건문(Condition Statements)에 대해서 알아보도록 하겠습니다. 조건문이란 말 그대로 조건의 결과에 따라서 실행되는 문장이 결정됩니다. 파이썬에서의 조건문은 바로 if문으로, 이 if문을 사용하면 조건식이 참(True)이냐 거짓(False)이냐에 따라 실행되는 문장을 다르게 만들 수 있습니다. 우선은 if문의 구조부터 보도록 하겠습니다. if 조건식: 문장 위의 구조를 보시면, 조건식이 참(True)과 거짓(False)으로 나뉘는데 주로 논리 연산자나 산술 연산자 등이 많이 쓰입니다. 예를 들어서, '만약에 변수 a의 값이 5보다 클 경우~'라는 조건을 만들어주고 싶으시면 'if a > 5:'라고 써주시면 됩니다. 주의하실 점은,..
파이썬 강좌 4-6편. 부울(Bool)
파이썬 강좌 4-6편. 부울(Bool)
2013.09.121. 부울(Bool) 오늘은 부울(Bool)에 대해서 알아보도록 하겠습니다. 이 부울이란 녀석은 참과 거짓을 나타내는 자료형이며, 참은 True로, 거짓은 False로 표현이 됩니다. 이 부울을 보자니 도대체 어디에 사용되는 녀석인지 생각이 도저히 나지 않으시는 분들도 계실겁니다. 왜 부울이라는 개념이 존재할까요? 참과 거짓은 도대체 어디에 사용되는 것일까요? 이는 파이썬 내의 논리 연산자를 통한 논리 연산이나, 수치를 서로 비교할때 사용하는 비교 연산자의 결과로 사용됩니다. >>> 3 > 5 False >>> 4 >> 'a'=='b' False >>> 3.14!=3.14 False 위 예제에 쓰인 비교 연산자들을 차례대로 설명하자면, 1행과 3행에서는 어느게 더 큰가 작은가를 비교하는..