본문 바로가기
728x90
반응형

Python181

[Py] collections.namedtuple-Factory Function 1. 팩토리 함수(Factory Function)란?팩토리 함수는 객체 생성 과정을 추상화하여 객체를 생성하는 함수 를 가리킴.즉, 객체를 직접 생성하는 대신 함수를 호출하여 객체를 생성하는 방식으로 다음과 같은 장점이 있음:객체 생성 로직의 캡슐화.생성 과정의 세부 사항 은닉.동일한 인터페이스로 다양한 유형의 객체 생성.코드의 재사용성 향상.Python에서 namedtuple은 대표적인 팩토리 함수의 예시.2. namedtuple 팩토리 함수namedtuple은Python의 collections 모듈에서 제공하는 팩토리 함수로,이름이 있는 필드를 가진 tuple의 서브클래스를 동적으로 생성.2023.10.06 - [Python] - [Python] tuple [Python] tupletuple Tupl.. 2025. 4. 4.
[Py] collection.OrderedDict OrderedDict는 삽입된 순서를 보존하는 기능을 추가한 일종의 dict임.collections 모듈에서 제공.Python 3.7부터 built-in dict도 삽입 순서를 보존하게 되었음.하지만 OrderedDict는 그 외에 몇 가지 중요한 추가 기능을 다음과 같이 제공함데이터의 순서가 중요한 경우나, cache처럼 삽입/제거 순서에 따라 다른 제어가 필요한 경우에 사용되는 데이터 구조임.가장 유명한 활용처 중 하나는 PyTorch에서 모델 및 파라메터를 저장/로드 하는 데 사용되는 경우임.0. 순서 유지Python 3.7부터는 dict도 순서를 유지함.from collections import OrderedDict# OrderedDict 생성print("=== OrderedDict 생성 및 기본.. 2025. 4. 4.
[Py] collections 모듈 (summary) - 작성중 Python의 collections 모듈은 파이썬의 built-in 자료구조를 확장한 special container 클래스들을 제공함.1. Counter요소의 개수를 세는 dictionary의 subclass.해시 가능한 객체의 카운트를 저장함.from collections import Counterc = Counter(['apple', 'orange', 'apple', 'banana', 'apple'])print(c) # Counter({'apple': 3, 'orange': 1, 'banana': 1})2. defaultdict:기본값을 제공하는 dictionary의 subclass.존재하지 않는 키에 접근할 때 에러 대신 기본값을 반환.from collections import defaultdi.. 2025. 4. 4.
[Py] print 함수 Python의 print() 함수란?print()는 Python의 built-in 함수로, 표준 출력(stdout) 에 메시지나 데이터를 문자열 형태로 출력하는 기능을 제공. 2024.09.11 - [CE] - [CE] Stream이란 [CE] Stream이란Stream:데이터를 연속적으로 흐르는 방식으로 처리한다는 개념으로,데이터의 입출력을 일종의 bit (or byte) 들의 흐름으로 여겨서 처리하는 것으로 생각하고이와 같은 방식으로 I/O가 이루어지는 대ds31x.tistory.comhttps://dsaint31.me/mkdocs_site/CE/ch10/ce10_2_04_stdio/#standard-io-library_1 BMEI/O Stream 과 Standard I/O Library 1. Str.. 2025. 4. 2.
[PyTorch] autograd 심화: grad_fn 과 custom operation 만들기 1. PyTorch Autograd 메커니즘 이해1-1. Tensor의 grad_fn과 연산 그래프 추적 방법PyTorch tensor의 grad_fn은 마지막 operation만 표시하는 attribute.전체 computation graph 확인을 위한 next_functions attribute의 활용.재귀적 접근을 통한 전체 operation history의 추적.def print_grad_graph(grad_fn, level=0): print(' ' * level, grad_fn) if hasattr(grad_fn, 'next_functions'): for next_func in grad_fn.next_functions: if next_func[0] i.. 2025. 3. 28.
[Py] Bitwise Operator Operand로 int 와 bool , 또는 byte와 bytesarrays의 각 요소만 사용할 수 있다.bytes 나 bytearrays는 직접 사용이 안되고 각 요소 단위로 꺼내서 처리해야 한다.참고로,Bitwise Operator는 Tensor 등에서 Element-wise로 동작하며 때문에 그 중요도가 매우커짐.  Python의 Bitwise Operators의 우선순위와 동작은 다음과 같음(이해를 위해 8비트 기준으로 기재했으나 실제로는 Python의 int는 가변 길이 정수로 비트 수에 제한이 없다는 점을 명심) Bitwise Operator를 연산자 precedence 에 따라 기재함:1. ~ (비트 NOT, complement)각 bit를 반전시킴키 (0을 1로, 1을 0으로)sign bi.. 2025. 3. 26.
728x90
반응형