[네트워크] HTTP
정보2025. 1. 18. 02:45[네트워크] HTTP

HTTP 이해하기HTTP는 HyperText Transfer Protocol의 약자로, 서버와 클라이언트 간 정보를 주고받기 위한 통신 프로토콜임. HTTP는 TCP/IP 기반으로 작동하며, 웹 상에서 HTML, JSON과 같은 데이터 형식을 주고받는 데 사용됨. HTTP의 주요 특징은 다음과 같음:Connectionless: 서버와 클라이언트는 요청(Request)과 응답(Response)이 끝나면 연결을 끊음. 동시 접속자 수가 많아도 서버 리소스를 효율적으로 사용할 수 있음Stateless: 서버는 클라이언트의 상태를 유지하지 않음.로그인 상태와 같은 정보를 유지하려면 Cookie, Session, JWT 등의 추가 기술이 필요함HTTP 메시지 구조HTTP 통신은 클라이언트가 서버로 요청(Reque..

[Python] Linked List
파이썬(python)2025. 1. 17. 15:53[Python] Linked List

파이썬으로 단일 연결 리스트(Linked List) 구현하기연결 리스트(Linked List)는 데이터 구조의 기본 중 하나로, 각 요소(Node)가 데이터와 다음 노드의 주소(참조)를 포함하는 방식으로 연결된 자료 구조임. 파이썬으로 단일 연결 리스트를 구현하는 방법을 예제 코드와 함께 설명함코드: LinkedList 클래스 구현아래는 Node 클래스와 LinkedList 클래스를 정의하여 연결 리스트의 기본 동작(추가, 조회, 삭제 등)을 구현한 코드임class Node: def __init__(self, data): self.data = data self.next = Noneclass LinkedList: def __init__(self, value): ..

파이썬(python)2025. 1. 16. 00:29[Python] 클로저(Closure)

파이썬 일급 함수와 클로저 기초 이해파이썬은 일급 함수(First-Class Function)를 지원하는 언어로, 함수를 마치 하나의 객체처럼 다룰 수 있음.이에 따라 클로저(Closure)라는 개념도 자연스럽게 등장함.클로저는 함수가 종료된 후에도 함수의 자유 변수(free variable)를 기억하고 사용할 수 있게 하는 강력한 기능을 제공함.일급 함수란?파이썬의 함수는 다음과 같은 조건을 만족하며 일급 객체로 취급됨:함수를 변수에 할당할 수 있음함수의 인수로 다른 함수를 전달할 수 있음함수의 반환값으로 다른 함수를 반환할 수 있음클로저(Closure)란?클로저는 함수가 반환된 이후에도 반환 당시의 환경을 기억하고 있는 함수임. 특히, 클로저는 외부 함수의 변수와 상태를 저장하여 이후에도 이를 참조하..

[Python] 해시 테이블(Hash Table) 활용: Dict, Set
파이썬(python)2025. 1. 12. 22:03[Python] 해시 테이블(Hash Table) 활용: Dict, Set

Python의 해시테이블(Hashtable) 활용: Dict와 SetPython에서 해시테이블은 적은 리소스로 대량의 데이터를 효율적으로 관리할 수 있는 핵심 구조임 특히 Dict와 Set은 데이터 중복을 허용하지 않고 빠른 검색을 가능하게 하여, 다양한 프로그래밍 문제에서 중요한 역할을 함1. Dictionary와 Set의 기본 특징Dictionary (Dict)키-값 쌍으로 데이터를 관리Key는 중복 불가, Value는 중복 허용삽입 순서를 유지Set데이터의 중복을 허용하지 않음순서가 없으며, 해싱을 기반으로 빠른 연산 가능추가적으로 frozenset을 통해 불변(immutable)한 집합을 생성 가능2. 불변 Dictionary (Immutable Dict)Python의 MappingProxyTyp..

[Python] 해시 테이블(Hash Table)
파이썬(python)2025. 1. 12. 21:48[Python] 해시 테이블(Hash Table)

해시 테이블 (Hash Table)란?해시 테이블은 Key-Value 형태로 데이터를 저장하는 자료구조로, Key 값을 해싱 함수(Hashing Function)를 통해 계산된 해시 주소에 매핑하여 데이터에 빠르게 접근할 수 있도록 함. Python에서는 dict와 set이 대표적으로 해시 테이블을 기반으로 구현된 자료구조임.파이썬 dict의 특징해시 값을 기반으로 한 접근성키 값의 해싱 결과에 따라 특정 메모리 주소로 바로 접근이 가능하므로 검색 속도가 매우 빠름.Mutable, Dynamicdict는 가변적이며, 필요한 만큼 동적으로 확장할 수 있음.Key의 조건 Key는 해시 가능(immutable)해야 함. 해시 가능 여부는 hash() 함수로 확인 가능.예를 들어, 튜플은 요소가 모두 immu..

[Python] sort, sorted
파이썬(python)2025. 1. 12. 16:17[Python] sort, sorted

Python 정렬 메서드 비교: sort와 sorted1. 차이점sorted새로운 객체 반환: 기존 리스트를 변경하지 않고, 정렬된 새로운 리스트를 반환함.사용 방식: sorted(iterable, *, key=None, reverse=False)원본 데이터는 변경되지 않음.sort원본 리스트 직접 변경: 리스트 객체에서 메서드로 호출하며, 리스트를 제자리에서 정렬함.사용 방식: list.sort(*, key=None, reverse=False)반환값: None (작업 후 리스트를 반환하지 않음).2. 예제 코드# 리스트 데이터 준비f_list = ['orange', 'apple', 'mango', 'papaya', 'lemon', 'strawberry', 'coconut']# sorted 예제print..

[Python] 파이썬 namedtuple
파이썬(python)2025. 1. 5. 23:07[Python] 파이썬 namedtuple

파이썬 namedtuple에 대한 이해와 활용파이썬의 namedtuple은 간단하고 가벼운 데이터 객체를 생성할 수 있는 표준 라이브러리 모듈인 collections에서 제공됨. 기존의 튜플과 유사하지만, 필드 이름을 지정하여 가독성을 높이고 키워드로 접근할 수 있는 점이 특징임. 1. namedtuple의 기본 사용법namedtuple은 튜플과 같은 불변 객체이지만, 필드 이름으로 값에 접근 가능함.namedtuple 정의from collections import namedtuple# Person이라는 namedtuple 정의Person = namedtuple('Person', ['name', 'age', 'city'])# 인스턴스 생성p = Person(name='Alice', age=30, city..

[Python] 파이썬 Magic Method
파이썬(python)2025. 1. 5. 23:01[Python] 파이썬 Magic Method

Python 매직 메서드(Magic Method) 이해하기파이썬에서 매직 메서드(Magic Method)는 클래스에 특별한 동작을 부여하기 위해 사용되는 특별한 형태의 메서드임. 이러한 메서드는 더블 언더스코어(__)로 시작하고 끝나는 이름을 가지며, 객체의 특정 동작을 커스터마이즈하거나 오버라이딩할 수 있도록 설계됨. 예를 들어, __init__, __str__, __add__ 등이 이에 해당함.1. 매직 메서드의 기본 개념매직 메서드는 클래스 내부에서 특별한 기능을 수행하며, Python의 빌트인 기능과 상호작용할 때 호출됨. 직접 호출하기보다는 특정 상황에서 Python이 자동으로 호출함.주요 매직 메서드 예시__init__(self, ...) : 객체 초기화__str__(self) : 객체의 문자..

image