본문 바로가기

PYTHON30

collections.Counter() (파이썬 클래스) 00 개요빈도수를 쉽게 반환해주는 Counter() 클래스에 대한 정리01 Counter() 클래스란1. 정의Python의 collections 모듈에 포함된 클래스 중 하나list, tuple, string 등에서 요소의 빈도를 쉽게 계산할 수 있는 기능 제공, 해시 가능한 객체의 횟수를 셈dict 자료형을 확장한 형태 → dict의 서브클래스요소를 key로, 빈도(i.e., 등장 횟수, 0 또는 음수 가능)를 value로 저장함즉, {'요소1': 빈도, '요소2': 빈도, ...}2. 문법from collections import CounterCounter([iterable-or-mapping])예시from collections import Counterstring_1 = ‘PearlAhnHello’.. 2024. 10. 7.
zip() (파이썬 함수) 00 개요iterable 객체를 다루는 파이썬 내장 함수에 대한 정리01 .zip() 란1. 정의zip() 함수는 입력된 여러 개의 iterable을 동시에 순회하며, 각 iterable의 동일한 인덱스 위치에 있는 요소들을 하나의 튜플로 묶어 반환하는 함수인자로 입력된 iterables들의 길이가 다를 경우, 가장 짧은 iterable을 기준으로 동작하며 남은 요소들은 무시됨 2. 문법zip(*iterables)인자iterables: 반복 가능한 객체들(list, tuple, str, etc.). 2개 이상의 iterable을 인자로 받음 반환값각 iterable의 요소를 묶은 tuple들의 iterator3. 예시1) 기본 사용 예시numbers 리스트와 letters 리스트가 각각의 인덱스에 맞춰 .. 2024. 9. 30.
extends vs implements (자바 키워드, 파이썬과 비교) 00 개요목록01 자바 extends 키워드란02 파이썬 상속이란03 자바 implements 키워드란04 파이썬 인터페이스 대체 - abc 추상화 모듈05 자바와 파이썬 비교자바는 객체 지향 프로그래밍 (Object Oriented Programming) 언어로, 코드 재사용과 확장을 지원하기 위해 다양한 기능을 제공함그중 extends와 implements는 클래스와 인터페이스 간의 관계를 설정하는 중요한 키워드임파이썬의 상속의 개념과 유사extends 및 implements 키워드의 정의, 문법, 예시 및 비교에 대한 정리 (두 키워드를 파이썬의 상속 개념과도 비교) 01 자바 extends 키워드란1. 정의자바에서 한 클래스가 다른 클래스를 상속받을 때 사용됨이를 통해 자식 클래스는 부모 클래스의.. 2024. 9. 30.
#! 셔뱅이란 (shell) 00 개요shell script 맨 윗줄에 #! 뒤에 경로가 오는 문법에 대한 정리01 Shebang #!이란1. 정의Shebang은 script file의 첫 줄에 등장하는 특별한 문법으로, script 실행 시 어떤 interpretor(해석기)를 사용할지 시스템에 지시하는 역할을 함일반적으로 LINUX와 같은 UNIX기반 운영체제에서 사용됨이 문법은 #!로 시작하며, 그 뒤에 해당 스크립트를 실행할 인터프리터의 경로를 명시2. 문법1) 기본 형식#!/path/to/interpreter설명:#! 이후에 나오는 경로는 script를 실행할 interpretor(예: /bin/bash, /usr/bin/python)의 절대 경로2) /usr/bin/env의 사용#!/usr/bin/env python이 형.. 2024. 9. 10.
cursor.iterate() (파이썬 메서드) 00 개요Python에서 DB와 작업 시, cursor 객체는 SQL 쿼리를 실행하고 데이터를 가져오는 중요한 도구임iterate() 메서드는 이러한 cursor 객체에서 사용되는 함수 중 하나로, DB 쿼리 결과를 한 행씩 순차적으로 가져올 수 있도록 도와줌01 cursor.iterate()란1. 정의cursor.iterate()는 쿼리 결과를 한 번에 모두 가져오는 대신, 한 행씩 순차적으로 처리할 수 있게 해주는 메서드일반적으로 fetchall()이나 fetchmany()와 같은 메서드는 쿼리 결과를 한꺼번에 메모리로 가져오지만, iterate()는 메모리 사용을 최소화하면서도 필요한 데이터만 점진적으로 처리할 수 있게 해줌2. 예시cursor.iterate() 처음 실행 시 반환값은 ['IC_cl.. 2024. 9. 4.
Decimal (파이썬 데이터 타입) 00 개요Decimal은 Python의 decimal 모듈에서 제공하는 데이터 타입으로, 소수점 숫자를 정확하게 처리할 수 있는 도구 제공Decimal 타입은 특히 금융 계산이나 정밀한 수치 연산이 필요한 경우에 유용함01 Decimal이란1. 정의소수점 이하 자릿수를 정확하게 저장하고 계산할 수 있도록 설계된 데이터 타입부동 소수점 숫자의 근사 오차를 피하고, 높은 정밀도로 숫자를 다룰 수 있음2. 주요 특징정확한 표현: Decimal은 소수점 이하 자릿수를 정확히 표현 가능설정 가능한 정밀도: 사용자가 소수점 자리수와 전체 자리수를 설정할 수 있음 부동 소수점 문제 방지: 부동 소수점 숫자는 이진수로 근사값을 저장하기 때문에, 계산 과정에서 오차가 발생할 수 있지만, Decimal은 이러한 오차를 방.. 2024. 9. 2.
PyList_New(size 또는 0) 00 개요파이썬 리스트를 생성하는 PyList_New() 함수에 대한 정리코드 분석 중 PyList_New() 함수는, 인자로 생성될 list의 크기를 줘야만 하는 함수인 줄 알았는데 PyObject *result = PyList_New(0)으로 선언한 뒤 result에 값이 추가가 되는 것을 보고 멘붕와서 이에 대한 설명을 하고자 함요약: PyObject* myList = PyList_New(0); 실행 시myList는 초기 크기가 0인 빈 Python 리스트로 생성됨이 리스트는 처음에는 요소를 포함하지 않지만, 이후에 요소 추가될 수 있음Python의 리스트는 동적으로 크기 조정이 가능하기에, 처음에 크기가 0이어도 나중에 항목 추가 가능'01 PyList_New(size) 함수1. 정의Python .. 2024. 8. 30.
subprocess (파이썬 모듈) 00 개요subprocess 모듈에 대한 정리 01 subprocess 모듈이란1. 정의subprocess 모듈은 새로운 프로세스를 생성하고, 그들의 입력/출력/에러 (input/output/error) 파이프에 연결하며, 반환 코드를 얻을 수 있게 함os.system 및 os.spawn* 와 같은 오래된 모듈 및 함수를 대체하기 위해 만들어짐 2. 사용서브프로세스를 호출할 때 권장되는 방법: run() 함수 사용Popen 인터페이스 사용 (advanced)프로세스 생성 및 관리는 기본적으로 Popen 클래스에 의해 처리됨02 subprocess의 Popen 생성자프로세스 생성 및 관리는 기본적으로 Popen 클래스에 의해 처리됨1. 문법class subprocess.Popen(args, .. 2024. 8. 23.
4 실습2 Refactoring - Dependency Injection 의존성 주입 앞 단계 참조 링크:상태 코드:  2024.03.26 - [Web 개발/FAST API (인프런 강의 내용)] - 1 FastAPI 알아보기프로젝트 소개 및 환경 구축: 2024.04.05 - [Web 개발/FAST API (인프런 강의 내용)] - 1 실습1 GET API 전체조회1 실습1 GET API ToDo 전체 조회: 2024.04.05 - [Web 개발/FAST API (인프런 강의 내용)] - 1 실습1 GET API 전체조회1 실습2 GET API ToDo 단일 조회: 2024.04.09 - [Web 개발/FAST API (인프런 강의 내용)] - 1 실습2 GET API 단일조회1 실습3 POST API ToDo 생성: 2024.04.15 - [Web 개발/FAST API (인프런 강의 .. 2024. 8. 8.