재귀 함수(Recursive Function)이란? 재귀 함수는 함수 내에서 자기 자신을 다시 호출하는 함수를 의미합니다. 이를 통해 반복적인 작업을 수행할 수 있습니다. 재귀 함수의 구조 def 재귀함수(): if 종료_조건: return 결과 ... 재귀함수() ... 예 팩토리얼은 재귀 함수의 대표적인 예시입니다. def factorial(n): if n == 1: return 1 return n * factorial(n - 1) factorial(5)를 호출한다고 가정하면, 아래와 같은 과정을 거치게 됩니다. 첫 번째 호출: factorial(5)가 호출됩니다. n = 5이므로, 5 * factorial(4)를 반환해야 합니다. factorial(4)를 호출하기 위해 다음 단계로 넘어갑니다. 두 ..
Python - isinstance() isinstance() 함수는 Python 내장 함수 중 하나로, 어떤 객체가 특정 클래스나 타입의 인스턴스인지를 확인하는 데 사용됩니다. 주어진 객체가 지정한 클래스 또는 타입의 인스턴스인 경우 True를 반환하고, 아닌 경우 False를 반환합니다. 예 # 예제 클래스 정의 class Animal: pass class Dog(Animal): pass class Cat(Animal): pass # 객체 생성 dog_instance = Dog() cat_instance = Cat() # isinstance 사용 print(isinstance(dog_instance, Dog)) # True print(isinstance(cat_instance, Dog)) # Fals..
values_list()는 Django 쿼리셋(QuerySet) 메서드 중 하나로, 데이터베이스에서 특정 필드들만 가져올 때 사용됩니다. 이 메서드는 특정 필드들에 대한 튜플들의 리스트를 반환합니다. 예시 # 예시 모델 class MyModel(models.Model): name = models.CharField(max_length=100) age = models.IntegerField() gender = models.CharField(max_length=100) height = models.IntegerField() # values_list() 사용 queryset = MyModel.objects.values_list('name', 'age') 위의 예시에서 values_list('name', 'age..
삽입 정렬 알고리즘(insertion sort algorithm) 삽입 정렬(insertion sort)은 리스트를 반복하면서 각 항목을 이미 정렬된 부분 리스트의 올바른 위치에 "삽입"함으로써 동작합니다. 리스트의 두 번째 항목에서 시작하여 왼쪽의 항목과 비교합니다. 현재 항목이 왼쪽 항목보다 작으면 왼쪽 항목을 오른쪽으로 이동시킵니다. 이를 현재 항목이 왼쪽 항목보다 크거나 왼쪽에 더 이상 항목이 없을 때까지 반복합니다. 그런 다음 현재 항목을 마지막으로 비어 있는 위치에 삽입합니다. 이 과정을 리스트의 모든 항목에 대해 반복합니다. 이를 파이썬 코드로 구현하면 다음과 같습니다: def insertion_sort(arr: list[int]) -> list[int]: # 배열 전체를 반복하면서 for ..
선택 정렬 알고리즘(selection sort) 리스트 중에서 최소값을 찾습니다. 그 값을 리스트의 맨 앞에 위치한 값과 바꿉니다. 맨 처음 위치를 제외한 나머지 리스트를 대상으로 위의 과정을 반복합니다. Python 코드 def selection_sort(arr: list[int]) -> list[int]: length: int = len(arr) # 배열 전체를 반복하면서 for index_1 in range(length): min_index: int = index_1 # 현재 위치에서 가장 작은 원소를 찾습니다. for index_2 in range(index_1 + 1, length): if arr[min_index] > arr[index_2]: min_index = index_2 # 가장 작은 ..
annotate() 메서드는 Django 쿼리셋에서 사용되는 함수 중 하나로, 데이터베이스에서 집계된 값을 추가하는 데 사용됩니다. annotate() 메서드를 사용하면 원하는 필드 값을 가져오고 그 값을 기반으로 새로운 필드를 생성할 수 있습니다. annotate(aggregate_expression, ...) aggregate_expression: 필드 값을 계산하기 위한 집계 식을 지정합니다. 일반적으로 Django의 django.db.models 모듈에 있는 집계 함수들을 사용합니다. 예를 들어, Count(), Sum(), Avg(), Min(), Max() 등이 있습니다. annotate() 메서드는 쿼리셋의 결과에 대해 각 필드 값에 대한 집계를 수행하고, 결과에 추가된 필드를 포함한 새로운..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.