Python 46

[Python] 클래스 상속

# 클래스 상속 기존 클래스를 기반으로 새로운 클래스를 정의하는 개념 코드 재사용과 계층 구조의 정의를 가능하게 한다. 새로운 클래스가 이미 존재하는 클래스의 속성과 메서드를 상속받아 사용하는 것 # 부모 클래스에서 상속받는 자식 클래스를 선언하는 형식 class 자식 클래스 이름(부모 클래스 이름): class Animal: def __init__(self, name): self.name = name def speak(self): pass # 이 메서드는 하위 클래스에서 구현될 것임 class Dog(Animal): def speak(self): return f"{self.name} says Woof!" class Cat(Animal): def speak(self): return f"{self.name..

Python 2024.01.12

[Python] Docstring

# Docstring 모듈, 함수, 클래스 또는 메서드 정의에서 첫 번째 문으로 나타나는 문자열 리터럴 코드의 목적, 사용법 및 동작에 관한 문서화를 제공하는 데 사용한다. 코드를 더 읽기 쉽게 만들고 사용자 및 개발자에게 유용한 정보를 제공한다. 세 개의 따옴표로 둘러싸여 있으며, 정의문 바로 다음에 배치한다. def add_numbers(a, b): """ This function adds two numbers and returns the result. Parameters: a (int): The first number. b (int): The second number. Returns: int: The sum of the two numbers. """ return a + b print(add_numb..

Python 2024.01.12

[Python] 리스트 컴프리헨션(List comprehension)

# 리스트 컴프리헨션(List comprehension) 리스트 내에서 실행할 수 있는 한 줄 for 문 리스트 내에 코드가 내포돼 실행된다. # 리스트 컴프리헨션의 기본 구조 [ for in ] # 숫자 제곱하기 # for 문 numbers = [1, 2, 3, 4, 5] square = [] for i in numbers: square.append(i ** 2) print(square) # [1, 4, 9, 16, 25] # 리스트 컴프리헨션 numbers = [1, 2, 3, 4, 5] square = [i ** 2 for i in numbers] print(square) # [1, 4, 9, 16, 25] # 조건문을 포함한 리스트 컴프리헨션 [ for in if ] 반복문을 수행하다가 if 을 ..

Python 2024.01.12

[Python] break와 continue

# break 반복문을 빠져나온다. # break를 이용해 while 문 빠져나오기 i = 0 while True: i = i + 1 # i가 1씩 증가 if(i > 3): # i가 3보다 크면 break # break로 while 문을 빠져나옴 print(i) # i 출력 # 1 # 2 # 3 # break를 이용해 for 문 빠져나오기 for i in range(10): if(i > 2): # i가 2보다 크면 break # break로 for 문을 빠져나옴 print(i) # i 출력 # 0 # 1 # 2 # continue 반복문의 처음으로 돌아가서 다음 반복을 진행한다. # for 문에서 continue 이용하기 for i in range(5): if(i == 2): continue print(..

Python 2024.01.12

[Python] while 문

# while 문 지정된 조건이 참(True)인 동안 특정 코드 블록을 반복적으로 실행하는 데 사용되는 제어문 반복 범위 없이 조건에 따라 반복 수행 여부를 결정한다. # while 문의 구조 while : 을 만족하면 을 계속 수행한다. 을 만족하지 않으면 을 실행하지 않고 while 문을 빠져나온다. 다음에는 콜론(:)을 쓰고, 은 들여쓰기를 한다. i = 0 # 초기화 sum = 0 # 초기화 print("i sum") while (sum < 20): # 조건 검사 i = i + 1 # i가 1씩 증가 sum = sum + i # 이전의 sum과 현재의 i를 더해서 sum을 갱신 print(i, sum) # i와 sum 출력 # i sum # 1 1 # 2 3 # 3 6 # 4 10 # 5 15 #..

Python 2024.01.12

[Python] 시퀀스 자료형(Sequence types)

# 시퀀스 자료형(Sequence types)이란? 요소들이 연속적으로 이어진 자료형 시퀀스를 사용하면 여러 항목을 하나의 변수에 저장할 수 있으며, 시퀀스의 각 요소는 고유한 인덱스 또는 위치를 갖는다. # 파이썬의 주요 내장 시퀀스 타입 Lists: 리스트는 변할 수 있는 시퀀스로, 다양한 데이터 타입의 요소를 포함할 수 있다. 요소들에 순서가 있고, 인덱스 표기법을 사용하여 액세스할 수 있다. 대괄호([])를 사용하여 정의한다. my_list = [1, 2.0, "three"] Tuples: 튜플은 변하지 않는 시퀀스로, 주로 고정된 항목의 컬렉션을 나타내는 데 사용된다. 요소들에 순서가 있고, 인덱스 표기법을 사용하여 액세스할 수 있다. 소괄호'()'를 사용하여 정의한다. my_tuple = (1..

Python 2024.01.12

[Python] for 문

# for 문(for-loop) 시퀀스나 반복 가능한 객체를 반복하는 데 사용되는 제어문 반복 범위를 지정한다. # for 문의 구조 for in : 는 에 따라 변하면서 을 실행한다. 즉, for 문을 시작하면 의 첫 번째 데이터가 에 들어가고 을 실행한다. 다음은 의 두 번째 데이터가 에 들어가고 을 또 실행한다. 이 과정을 의 마지막까지 반복한다. 에서 를 이용할 수 있다. 다음에 콜론(:)을 입력하고, 을 입력할 때는 들여쓰기를 한다. # for 문의 반복 범위 지정 리스트를 이용하여 반복 범위 지정하기 for i in [0, 1, 2, 3, 4, 5]: print(i) # 0 # 1 # 2 # 3 # 4 # 5 nums = {1, 2, 3, 4, 5} for num in nums: print(n..

Python 2024.01.12

[Python] if 문

# if 문 특정 조건에 따라 코드 블록을 실행할 수 있는 제어문 # 단일 조건(if 문의 기본 구조) if : # 조건문이 참(True)일 경우 실행될 코드 을 만족하면(참이면) 을 수행하고, 만족하지 않으면(거짓이면) 수행하지 않는다. 다음에는 콜론(:)을 입력한다. 다음 줄에서 을 입력할 때 들여쓰기를 한다. x = 95 if x >= 90: print("Pass") # Pass # 단일 조건과 그 외 조건 if : # 조건문이 True일 경우 실행될 코드 else: # 조건문이 False일 경우 실행될 코드 을 만족하면 을 수행하고, 만족하지 않으면 를 수행한다. 과 else 다음에는 콜론(:)을 입력한다. 과 는 들여쓰기를 한다. else는 단독으로 쓸 수 없고, 반드시 if와 함께 써야 한다...

Python 2024.01.12

[Python] 딕셔너리(Dictionary)

# 딕셔너리(Dictionary)란? 키-값(key-value) 쌍 형식으로 데이터를 저장하고 검색할 수 있는 내장 데이터 유형 키를 이용해 값을 다룬다. 키는 임의로 지정한 숫자나 문자열이 될 수 있으며, 값은 어떤 데이터 타입도 사용할 수 있다. # 딕셔너리 만들기 딕셔너리 데이터 전체를 중괄호({})로 감싼다. 키와 값의 구분은 콜론(:)으로 한다. 키와 값으로 이루어진 각 쌍은 콤마(,)로 구분한다. # 나라-수도 이름 country_capital = { "대한민국": "서울", "프랑스": "파리", "미국": "워싱턴", "영국": "런던" } country_capital # {'대한민국': '서울', '프랑스': '파리', '미국': '워싱턴', '영국': '런던'} type(country_..

Python 2024.01.12

[Python] 얕은 복사(shallow copy) vs 깊은 복사(deep copy)

# 파이썬에서 객체를 복사하는 두 가지 방법 얕은 복사(shallow copy) 깊은 복사(deep copy) # 얕은 복사(shallow copy) 얕은 복사는 새로운 객체를 생성하지만 원본의 요소에 대해서는 새로운 객체를 생성하지 않는다. 대신, 원본에 있는 객체에 대한 참조를 복사한다. copy 모듈이나 list.copy(), dict.copy()와 같은 객체별 메서드를 사용하여 생성할 수 있다. 전체 객체 계층 구조를 복제하지 않기 때문에 깊은 복사에 비해 빠르고 적은 메모리를 사용다. import copy original_list = [1, [2, 3], [4, 5]] shallow_copied_list = copy.copy(original_list) # 얕은 복사 리스트의 수정이 원본 리스트에..

Python 2024.01.12
728x90