Python
[Python] 예외 처리 사용하기
2024.02.08
예외(exception)란 코드를 실행하는 중에 발생한 에러를 뜻한다. 다음과 같이 10을 어떤 값으로 나누는 함수 ten_div가 있을 때 인수에 따라 정상으로 동작하기도 하고 에러가 나기도 한다. >>> def ten_div(x): ... return 10 / x ... 이 함수에 2를 넣으면 5.0이 나온다. 하지만 0을 넣으면 실행하는 중에 에러가 발생한다. 이런 상황을 예외라고 하는데 여기서는 어떤 숫자를 0으로 나누어서 ZeroDivisionError 예외가 발생했다. ZeroDivisionError뿐만 아니라 지금까지 만난 AttributeError, NameError, TypeError 등 다양한 에러들도 모두 예외이다. try except로 사용하기 예외 처리를 하려면 다음과 같이 try..
Python
[Python] 클래스 (3)
2024.02.08
클래스 상속 사용하기 상속은 무언가를 물려받는다는 뜻이다. 그래서 클래스 상속은 물려받은 기능을 유지한채로 다른 기능을 추가할 때 사용하는 기능이다. 여기서 기능을 물려주는 클래스를 기반 클래스(base class), 상속을 받아 새롭게 만드는 클래스를 파생 클래스(derived class)라고 한다. 보통 기반 클래스는 부모 클래스(parent class), 슈퍼 클래스(superclass)라고 부르고, 파생 클래스는 자식 클래스(child class), 서브 클래스(subclass)라고도 부른다. 클래스 상속은 생물 분류를 떠올리면 이해하기 쉽다. 예를 들어 조류, 어류는 공통된 조상인 척추동물로부터 물려받은 특성을 공유하면서 각자 고유한 특성을 가진다. 척추를 가졌다는 특성은 변함이 없지만 날개를 ..
Python
[Python] 클래스 (2)
2024.02.08
속성에는 클래스 속성과 인스턴스 속성 두 가지 종류가 있다. __init__ 메서드에서 만들었던 속성은 인스턴스 속성이다. 클래스 속성 사용하기 class 클래스이름: 속성 = 값 class Person: bag = [] def put_bag(self, stuff): self.bag.append(stuff) james = Person() james.put_bag('책') maria = Person() maria.put_bag('열쇠') print(james.bag) print(maria.bag) 실행결과 ['책', '열쇠'] ['책', '열쇠'] james와 maria 인스턴스를 만들고 각자 put_bag 메서드로 물건을 넣었는데, james.bag과 maria.bag을 출력해보면 넣었던 물건이 합쳐져서..
Python
[Python] 클래스 (1)
2024.02.08
클래스 사용하기 ​클래스는 객체를 표현하기 위한 문법이다. 프로그래밍에서는 현실 세계에 있는 개념들뿐만 아니라 컴퓨터 안에서만 쓰이는 개념들도 클래스로 만들어서 표현한다. 특정한 개념이나 모양으로 존재하는 것을 객체(object)라고 부른다. 그리고 프로그래밍으로 객체를 만들 때 사용하는 것이 클래스이다. 데이터를 클래스의 속성(attribute)이라 부르고, 기능을 메서드(method)라고 부른다. 이러한 프로그래밍 방법을 객체지향(object oriented) 프로그래밍이라고 한다. 객체지향 프로그래밍은 복잡한 문제를 잘게 나누어 객체로 만들고, 객체를 조합해서 문제를 해결한다. 따라서 현실 세계의 복잡한 문제를 처리하는데 유용하며 기능을 개선하고 발전시킬 때도 해당 클래스만 수정하면 되므로 유지 보..
Python
[Python] 람다 표현식으로 함수 만들기
2024.02.08
람다 표현식 람다 표현식은 식 형태로 되어 있다고 해서 람다 표현식 (lambda expression)이라고 부른다. 특히 람다 표현식은 함수를 간편하게 작성할 수 있어서 다른 함수의 인수로 넣을 때 주로 사용한다. 람다 표현식으로 함수 만들기 >>> def plus_ten(x): ... return x + 10 ... >>> plus_ten(1) 11 숫자를 받은 뒤 10을 더해서 반환하는 함수 return x + 10으로 매개변수 x에 10을 더한 값을 반환하는 간단한 함수이다. 람다 표현식은 다음과 같이 lambda에 매개변수를 지정하고 : (콜론) 뒤에 반환값으로 사용할 식을 지정한다. lambda 매개변수들: 식 >>> lambda x: x + 10 실행해보면 함수 객체가 나오는데, 이 상태로는..