본문 바로가기

파이썬

(62)
[Python] 파이썬 raise 구문 raise 구문 이상하게 들리겠지만 프로그래밍을 하다보면 일부러 예외를 발생시키는 상황이 있습니다. 가장 대표적인 상황으로 구현하지 않고 남겨둔 함수의 내부를 개발자가 꼭 작성할 수 있도록 강제하는 상황입니다. def count(self): pass 개발을 하다보면 함수의 이름만 선언해 놓고 내부 구현은 하지 않고 남겨두는 경우가 많습니다. 이때는 아래 상황 처럼 pass 키워드를 통해서 내부 기능은 구현하지 않고 넘어갈 수 있습니다. 하지만 이 방법은 개발자가 해당 코드를 보지 않으면 내부가 구현되었는지 안되었는지 알지도 모른채 지나갈 수도 있습니다. 이럴때 개발되지 않은 부분에 대한 강제성을 부여할 수 있는데요. 이때는 아래와 처럼 '구현되지 않은 부분'에 대한 에러를 발생하도록 만들 수 있습니다. ..
[Python] 파이썬 예외 구분하기 (except ... as ...) 발생하는 예외에 따라 각각 다른 처리를 하고 싶은 경우가 있을 수도 있습니다. 그떄는 아래 처럼 예외를 구분하여 처리할 수 있습니다. try: 예외가 발생할 가능성이 있는 코드 except 예외 종류 1: 처리 코드 except 예외 종류 2: 처리 코드 except 예외 종류 3: 처리 코드 위 처럼 except를 여러개 구성하면 각 예외에 따라 서로 다른 처리를 해줄 수 있습니다. 그런데 만약 예외의 이름을 모르는 경우가 발생할 수 있으므로 , 모든 예외의 부모 클래스인 Exception 을 통해서 모든 예외를 처리해주어야 프로그램이 안전하게 돌아갈 수 있습니다. try: 예외가 발생할 가능성이 있는 코드 except 예외 종류 1 as e: 처리 코드 except 예외 종류 2 as e: 처리 코드..
[Python] 파이썬 자료형 확인하는 isinstance 함수 파이썬에서는 주어진 인스턴스가 특정 클래스/데이터 타입인지 검사해주는 함수가 있는데요. 바로 isinstance함수입니다. isinstance함수의 사용법은 아래와 같습니다. isinstance(인스턴스, 클래스/데이터타입) 이때 인스턴스가 특정 클래스/데이터 타입과 일치할 경우에는 True를 아닌 경우에는 False를 리턴해줍니다. # int 인스턴스인지 검사, True 출력 result = isinstance(1, int) print(result) # float 인스턴스인지 검사, True 출력 result = isinstance(1.345, float) print(result) # str 인스턴스인지 검사, True 출력 result = isinstance("It's string", str) pri..
[Python] 파이썬 dict 자료형의 update 함수 dict 자료형에는 update함수가 있습니다. 이 함수는 기존 dictionary의 데이터를 한꺼번에 바꿀때 유용한 함수입니다. 기존의 데이터를 수정할 수도 있고, 추가할 수도 있습니다. 아래 예제를 살펴봅시다. dict_example = {'림코딩': 30, '김갑환': 33, '장고환': 23} print(dict_example) dict_example.update({'림코딩':33,'최번개':26}) print(dict_example) update함수를 통해, 림코딩에 해당하는 값을 33으로 변경하고, 최번개라는 키와 그에 해당하는 값을 추가한 것을 보실 수 있습니다. 출력 {'림코딩': 30, '김갑환': 33, '장고환': 23} {'림코딩': 33, '김갑환': 33, '장고환': 23, '..
[Python] 파이썬 예외 처리 - try except else finally구문 프로그램 실행 중에 발생하는 오류를 예외(exception) 또는 런타임 오류(runtime error)라고 합니다. 실행 중에 예기치 못한 상황이 발생해서 프로그램이 죽는 상황이 발생하기도 하는데요. 프로그램이 안정적으로 구동될 수 있기 위해서는 예외 상황에 대한 처리를 잘해주어야 합니다. 파이썬에서는 예외처리를 위한 try except 구문을 제공합니다. print("나눗셈을 위한 두 수를 입력하세요") val_a = int(input()) val_b = int(input()) result = val_a/val_b print("나누기 결과 : {}".format(result)) 위의 코드는 두 정수를 입력받아 나머지를 출력하는 코드입니다. 하지만 위 코드는 한가지 문제가 있는데요. 바로 0으로 수를 ..