[Java] 객체 리스트를 특정 속성으로 정렬하는 방법
·
개발 (Development)/Java
ArrayList에 저장된 사용자 정의 객체를 특정 속성 값으로 정렬해야 하는 상황은 개발에서 매우 자주 발생합니다. 예를 들어 Product라는 클래스가 있고, 그 안에 price라는 속성이 있다고 가정해 보겠습니다. 이번 글에서는 price뿐만 아니라 다양한 클래스 속성을 기준으로 오름차순과 내림차순 정렬을 수행하는 방법을 단계별로 설명합니다.1. 문제 정의다음과 같이 ArrayList에 상품 목록이 저장되어 있다고 합시다.이 리스트를 가격(price) 기준으로 정렬하는 것이 목표입니다.class Product { private double price; private String name; public Product(double price, String name) { th..
[Python] 데이터프레임에서 열 선택하기: `df.iloc[:, idxs]`의 의미
·
개발 (Development)/Python
이 코드는 df.iloc[:, idxs]의 간결한 표현입니다.이는 Pandas DataFrame에서 모든 행(row)을 선택하면서, 특정 열(column)을 정수 인덱스(순서)를 사용해 선택하는 방법입니다.: (콜론)은 '모든'을 의미하며, 첫 번째 위치에 있어 모든 행을 선택합니다.idxs는 선택하려는 열의 인덱스(순서)를 나타냅니다.예시아래와 같은 DataFrame df가 있다고 가정해 봅시다. A B C0 1 4 71 2 5 82 3 6 9첫 번째 열(A)만 가져오기:df.iloc[:, 0]결과:0 11 22 3Name: A, dtype: int64두 번째와 세 번째 열(B, C)만 가져오기:df.iloc[:, 1:3]결과: B C0 4 71 5 ..
[Python/PostgreSQL] 정규식을 활용해 SQL 쿼리 파라미터(컬럼명)를 자동으로 감싸기
·
개발 (Development)/Python
SQL 쿼리를 동적으로 생성할 때, 컬럼명이나 파라미터가 예약어(keyword) 와 충돌하거나 특수문자가 포함되어 오류가 발생하는 경우가 종종 있습니다. 이럴 때, 컬럼명을 쌍따옴표(" ") 로 감싸주는 것이 좋은 해결책이 될 수 있습니다.이번 글에서는 Python의 re (정규식) 모듈을 사용하여 쿼리 문자열에서 예약어가 아닌 단어(컬럼명)를 찾아 자동으로 쌍따옴표를 추가하는 방법을 알아보겠습니다.문제 상황"test_parameter > 0 and TEST_PARAMETER22 와 같은 쿼리 문자열이 있다고 가정해 봅시다. 이 쿼리를 파싱(parsing) 해서 test_parameter, TEST_PARAMETER22, value와 같은 컬럼명만 골라내고, 이들을 "test_parameter", "TE..
[PostgreSQL] 테이블별 용량 확인 방법
·
개발 (Development)/PostgreSQL
PostgreSQL: 테이블별 용량 확인 방법PostgreSQL 데이터베이스를 관리하면서 어떤 테이블이 가장 많은 공간을 차지하고 있는지 파악하는 것은 성능 최적화와 스토리지 관리에 매우 중요한 일입니다. 이 글에서는 PostgreSQL에서 한 데이터베이스 내의 테이블별 전체 용량을 확인하는 세 가지 방법을 알려드리겠습니다.1. SQL 쿼리 활용하기 (가장 정확한 방법)가장 정확하고 상세한 정보를 얻을 수 있는 방법은 SQL 쿼리를 직접 실행하는 것입니다. pg_total_relation_size() 함수는 테이블 자체는 물론, 연관된 인덱스와 TOAST 테이블의 크기까지 합산하여 전체 용량을 보여줍니다.SELECT relname AS "테이블명", pg_size_pretty(pg_total_..
[Python] `__pycache__`란 무엇인가?
·
개발 (Development)/Python
__pycache__는 도대체 무엇이며, Git에 올려도 될까?Python 프로젝트를 진행하다 보면 __pycache__라는 낯선 폴더를 발견하게 됩니다. 이 폴더는 왜 생기는지, 그리고 Git을 이용해 협업할 때 이 파일을 어떻게 처리해야 할지 궁금해하는 분들이 많습니다. 이번 글에서는 __pycache__의 정체와 올바른 관리 방법에 대해 알아보겠습니다.__pycache__의 정체는? (feat. 바이트 코드)__pycache__는 Python이 프로그램의 속도를 향상시키기 위해 사용하는 캐시 폴더입니다. Python은 소스 코드(.py)를 실행하기 전, 바이트 코드(.pyc)라는 중간 단계의 코드로 변환합니다. 이렇게 변환된 .pyc 파일은 __pycache__ 디렉터리에 저장됩니다.다음 번에 같은..