Python 103

2024-03-19파이썬의 예외처리

1. 예외 예외(Exception)는 프로그램 실행 중 발생할 수 있는 예상치 못한 문제 또는 오류 상황을 의미합니다. 예외가 발생하면 프로그램은 중단되기 때문에 이를 적절하게 처리하여 중단을 방지하거나 오류에 대한 정보를 사용자에게 제공해야 합니다. 2. 예외가 발생하는 경우 ValueError 잘못된 값을 함수나 연산에 제공할 때 발생합니다. 예) 숫자가 아닌 문자열을 int() 함수로 변환하려고 할 때 발생. TypeError 올바르지 않은 유형의 객체를 연산에 사용하려 할 때 발생합니다. 예) 문자열과 숫자를 함께 더하려고 할 때 발생. ZeroDivisionError 숫자를 0으로 나누려고 할 때 발생합니다. IndexError 리스트, 튜플, 문자열 등의 시퀀스 유형에서 범위를 벗어난 인덱스에..

Python/개념 2024.03.19

2024-03-19 파이썬 스페셜(매직) 메소드

1. 스페셜 메서드 파이썬의 스페셜 메서드 (또는 매직 메서드라고도 불림)는 더블 언더스코어(__)로 시작하고 끝나는 메서드 이름을 갖습니다. 이 메서드들은 특정 구문이나 내장 함수를 사용할 때 파이썬 인터프리터에 의해 자동으로 호출됩니다. 예를 들어, 객체에 대해 + 연산자를 사용하면 해당 객체의 __add__ 메서드가 호출됩니다. 또는 len() 함수를 사용하면 __len__ 메서드가 호출됩니다. 1. __init__ : 객체 초기화 메서드 2. __str__ : 객체를 문자열로 표현하는 메서드. print() 함수나 str() 함수를 사용할 때 호출됩니다. 3. __add__ : + 연산자를 사용할 때 호출되는 메서드 4. __len__ : len() 함수를 사용할 때 호출되는 메서드 5. __ge..

Python/개념 2024.03.19

2024-03-19 파이썬 상속

1. 상속 파이썬에서 상속은 한 클래스의 속성과 메서드를 다른 클래스에 전달하는 기능을 의미합니다. 상속을 사용하면 기존의 코드를 재사용하고 확장할 수 있습니다. 기본적으로 파이썬의 모든 클래스는 object라는 기본 클래스로부터 상속받습니다. 기본 클래스 (또는 부모 클래스): 상속의 출발점이 되는 클래스입니다. 파생 클래스 (또는 자식 클래스): 상속을 통해 속성과 메서드를 받는 클래스입니다. class Parent: pass class Child(Parent): pass 클래스 상속 시 생성자 호출 순서 1. 자식 클래스(child class)의 생성자가 호출됩니다. 2. 자식 클래스의 생성자에서 부모 클래스(parent class)의 생성자를 호출해야 합니다. 이를 위해 super() 함수를 사용..

Python/개념 2024.03.19

2024-03-18 과제 가위바위보

과제 1 가위. 바위, 보 게임 만들기 - 가위, 바위, 보 중 하나를 입력하세요: 가위 - 컴퓨터: 바위, 유저: 가위 -> 결과: 컴퓨터 승! import random # random.py user = input('가위, 바위, 보 중 하나를 입력하세요: ') pc = random.randint(1, 3) # 1==가위 2==바위 3==보 def c_name(pc): if pc ==1: return '가위' elif pc ==2: return '바위' elif pc ==3: return '보' pc = c_name(pc) def game(user, pc): if user == '가위': if pc == '가위': return '비겼습니다' elif pc == '바위': return '컴퓨터 승!' e..

Python/개념 2024.03.18

2024-03-18 객체지향과 클래스

1. 객체지향 프로그래밍 객체지향 프로그래밍(Object-Oriented Programming, OOP)은 소프트웨어를 설계하고 구현하는 데 사용되는 중요한 프로그래밍 패러다임 중 하나입니다. 이 패러다임은 프로그램을 "객체"라고 불리는 독립적인 개체로 나누고, 이러한 객체들 간의 상호작용을 통해 프로그램을 구성하는 개발 방법론입니다. 객체(Object): 객체는 현실 세계에서의 실제 개체나 추상적인 개념을 모델링한 것입니다. 예를 들어, 자동차, 사람, 은행 계좌 등이 객체가 될 수 있습니다. 객체는 데이터(속성, 상태)와 메서드(동작, 함수)로 구성됩니다. 클래스(Class): 클래스는 객체를 만들기 위한 템플릿 또는 설계도입니다. 클래스는 객체의 공통 속성과 동작을 정의하며, 객체를 생성하는데 사용..

Python/개념 2024.03.18

2024-03-18 콜백함수와 람다함수

1. 콜백함수(callback function) 콜백 함수는 다른 함수에 인자로 전달되어, 어떤 이벤트나 특정 조건에서 실행되게 되는 함수를 말합니다. 콜백 함수는 주로 비동기 작업이나 특정 이벤트 발생 시점에 어떤 동작을 수행할 때 사용됩니다. 이벤트 기반 프로그래밍: 많은 이벤트 기반 프로그래밍 환경에서는 이벤트 발생 시점에 콜백 함수를 실행하여 사용자에게 알리거나 특정 동작을 수행합니다. 비동기 작업: 특히 비동기 처리를 할 때, 작업의 완료나 실패 시점에 콜백 함수를 실행하여 결과를 반환하거나 오류를 처리합니다. 코드의 유연성: 콜백 함수를 사용하면 함수나 클래스의 코드를 변경하지 않고도 동작을 확장하거나 수정할 수 있습니다. 2. 람다 함수(Lambda Function) 람다 함수는 파이썬에서 ..

Python/개념 2024.03.18

2024-03-18 변수의 범위

1. 스코프(scope) 파이썬에서 변수의 범위(scope)는 해당 변수가 프로그램 내에서 참조되고 변경될 수 있는 영역을 의미합니다. 파이썬의 변수 범위는 크게 네 가지로 분류됩니다 1. Local(지역): Local scope는 변수가 함수 내에서 정의될 때 해당 함수 내부를 의미합니다. 2. Enclosing(둘러싼 범위): Enclosing scope는 내부 함수에서 외부 함수의 변수를 참조할 때 해당 외부 함수 범위를 의미합니다. 3. Global(전역 범위): Global scope는 변수가 스크립트의 최상위 수준에서 정의될 때 전체 스크립트 파일 내에서 해당 변수로 사용됨을 의미합니다. 4. Built-in(내장 범위): Built-in scope는 파이썬의 내장 함수와 모듈들이 속하는 범위..

Python/개념 2024.03.18

2024-03-15 사용자 정의 함수

1. 사용자 정의 함수 사용자 정의 함수란 사용자가 특정 작업을 수행하기 위해 직접 작성한 함수를 의미합니다. 파이썬에는 많은 내장 함수들이 있지만, 때로는 우리의 요구사항에 맞게 동작하는 함수를 직접 만들어야 할 때가 있습니다. 이때 사용자 정의 함수를 작성하게 됩니다. 기본적인 구조는 아래와 같습니다. def 함수명(매개변수1, 매개변수2, ...): # 함수 내용 return 결과값 2. 매개변수와 반환 값이 없는 함수 3. 매개변수가 있고 반환 값이 없는 함수 4. 반환 값이 있는 함수 ※ None의 특징 None은 파이썬에서 특별한 값으로, 아무런 값이 없음을 표현하는 데 사용됩니다. 다른 언어에서의 null 또는 nil과 유사한 개념입니다. None은 파이썬의 내장 상수이며, 그 자체로 데이터..

Python/개념 2024.03.15

2024-03-15 컬렉션과 반복문

for문은 다양한 컬렉션(리스트, 튜플, 딕셔너리, 세트 등)과 함께 사용할 수 있습니다. 1. 리스트와 for 문 2. 딕셔너리와 for 문 .items() 메서드는 딕셔너리에서 사용되는 메서드입니다. 이 메서드는 딕셔너리의 키와 값을 쌍으로 하는 튜플들을 반환합니다. 일반적으로 이 메서드는 딕셔너리의 키와 값을 동시에 반복(iterate)하고자 할 때 사용됩니다. 3. 컴프리헨션(Comprehension) 컴프리헨션(Comprehension)은 파이썬에서 리스트, 세트, 딕셔너리 등의 컬렉션을 간단하게 생성하거나 변형하는 방법 중 하나입니다. 컴프리헨션은 반복문과 조건문을 사용하여 간결하게 컬렉션을 생성하는 기법으로, 코드를 더 간단하고 가독성 좋게 작성할 수 있도록 도와줍니다. 리스트 컴프리헨션 리..

Python/개념 2024.03.15

2024-03-14 제어문 - 반복문

1. 반복문 반복문은 동일한 작업을 여러 번 실행하기 위해 사용되는 제어 구조입니다. 주로 for 문과 while 문이 사용되며, 각각의 반복문은 다른 상황에 적합한 방식으로 사용됩니다. 2. while 문 while 문은 특정 조건이 참인 동안 반복적으로 코드 블록을 실행하는 제어 구조입니다. while 문은 주어진 조건이 참인 동안 반복적으로 코드를 실행하며, 조건이 거짓이 되면 반복을 멈춥니다. while 조건: # 조건이 참인 동안 실행될 코드 조건은 평가 결과가 참(True) 또는 거짓(False)이 될 수 있는 표현식입니다. 조건이 참일 때 코드 블록이 실행되며, 코드 블록이 실행된 후에 다시 조건을 검사합니다. 조건이 여전히 참이라면 코드 블록을 다시 실행하고, 이 과정을 조건이 거짓이 될 ..

Python/개념 2024.03.14