반응형

ORDER BY와 LIMIT 사용법 완벽 정리
: 정렬과 데이터 추출의 핵심

여러분, SQL에서 데이터를
"예쁘게" 정렬하고,
필요한 "딱 몇 개"만 뽑아내고 싶었던 적 없으셨나요?
이 두 가지, 생각보다 엄청 자주 쓰입니다!

 

 

안녕하세요, 데이터베이스를 배우는 우리 초보 개발자 여러분!

오늘은 SQL 쿼리 중에서도 실무에서 정말 자주 쓰이는 핵심 문법 두 가지, ORDER BYLIMIT에 대해 자세히 알아보려 해요.

게시판 글을 최신순으로 정렬한다든지, 인기 상품 상위 10개만 뽑는다든지 하는 아주 흔한 상황에서 이 문법들이 사용됩니다.

실제 실습 예제도 준비했으니, 끝까지 따라오시면 확실히 익히실 수 있어요.

그럼 지금 바로 시작해볼까요? 😎

1. ORDER BY 기본 개념 🧭

SQL에서 데이터를 조회할 때, 무작위로 나열된 결과는 종종 불편하죠.

예를 들어 게시판에서 최근 글이 위에 뜨지 않는다면 얼마나 불편할까요?

그래서 등장한 게 바로 ORDER BY 구문입니다.

 

ORDER BY는 조회한 데이터 결과를 정렬할 수 있게 해주는 구문이에요.

기본적으로 오름차순(ASC) 또는 내림차순(DESC)으로 정렬할 수 있어요.

기본 문법 구조

SELECT * FROM 테이블명
ORDER BY 컬럼명 [ASC | DESC];

✔ 예시로 이해하기

SELECT * FROM posts
ORDER BY created_at DESC;

 

위 쿼리는 posts라는 테이블에서 데이터를 조회하면서 created_at 컬럼 기준으로 내림차순(DESC),

즉 가장 최신 글부터 정렬하는 예입니다.

ORDER BY를 쓸 때 꼭 알아야 할 3가지

  • 기본 정렬은 오름차순(ASC)이며, 생략하면 ASC가 기본값입니다.
  • 여러 개의 컬럼을 쉼표로 나열하면 순차적으로 정렬됩니다.
  • NULL 값은 보통 가장 뒤로 정렬되지만 DB에 따라 다를 수 있어요.

📝 TIP: 컬럼 별칭으로도 정렬 가능해요!

SELECT id, title, created_at AS date
FROM posts
ORDER BY date DESC;

 

AS로 만든 별칭(date)으로도 ORDER BY를 사용할 수 있어요. 보기 편한 이름으로 바꾸면 유지보수에도 좋습니다.

정리 테이블 🧩

문법 설명 예시
ORDER BY 컬럼명 ASC 오름차순 정렬 나이 적은 순서, 등록일 빠른 순
ORDER BY 컬럼명 DESC 내림차순 정렬 최근 글 순, 점수 높은 순

2. 최신순 vs 오래된순 정렬 실습 📅

정렬의 진짜 실전은 바로 여기서 시작돼요.

우리는 게시판에서 글을 볼 때 최신글이 위로 올라오길 기대하죠.

반대로, 글 작성 순서대로 오래된 글부터 보고 싶을 때도 있어요.

이럴 때 사용하는 게 ORDER BY created_at DESC / ASC입니다.

🧪 실습 1: 게시판 글을 최신순으로 정렬

SELECT id, title, created_at
FROM board
ORDER BY created_at DESC;

 

위 쿼리는 board 테이블에서 글 목록을 조회하면서 created_at을 기준으로 최신순(DESC)으로 정렬합니다. 게시판처럼 최신글을 위에 보여주는 경우에 딱입니다.

🧪 실습 2: 게시판 글을 오래된 순으로 정렬

SELECT id, title, created_at
FROM board
ORDER BY created_at ASC;

 

이번에는 ASC를 사용해서 오래된 순서로 정렬했어요. 일반적으로 고객 문의 내역, 댓글 기록 등 처음부터 순서대로 보여줘야 하는 경우에 활용됩니다.

📋 DESC vs ASC 비교 테이블

옵션 의미 사용 예시
DESC 내림차순 (큰 값 → 작은 값) 최신 게시글, 점수 높은 순, 가격 높은 순
ASC 오름차순 (작은 값 → 큰 값) 오래된 게시글, 점수 낮은 순, 가격 낮은 순

💡 정렬 기준이 숫자일 경우

숫자 컬럼도 똑같이 ORDER BY에 사용 가능합니다.

예를 들어 조회수 높은 글부터 보고 싶다면 ORDER BY view_count DESC처럼 쓰면 됩니다.

 

 

3. LIMIT으로 원하는 개수만 추출하기 🎯

SQL로 데이터를 조회할 때, 모든 데이터를 다 가져올 필요는 없죠.

게시판에서 상위 5개 글만, 인기 상품 중 상위 10개만 보여주고 싶을 때도 있어요.

이럴 때 LIMIT 구문을 사용합니다.

 

LIMIT은 말 그대로 가져올 행(Row)의 수를 제한하는 역할을 해요.

특히 데이터가 많은 테이블에서 쿼리 성능을 올릴 때도 유용하죠.

기본 문법 구조

SELECT 컬럼명 FROM 테이블명
LIMIT 개수;

 

예를 들어 최근 등록된 글 5개만 보고 싶다면 이렇게 쓸 수 있어요:

SELECT * FROM board
ORDER BY created_at DESC
LIMIT 5;

 

여기서 ORDER BY와 LIMIT을 같이 쓴 게 핵심이에요.

정렬 먼저 한 다음, 위에서부터 5개만 보여주는 거죠.

LIMIT과 OFFSET 같이 쓰기

OFFSET은 LIMIT과 함께 쓰이면 몇 번째 행부터 보여줄지 정할 수 있어요.

페이지네이션(Pagination)에서 자주 사용됩니다.

SELECT * FROM board
ORDER BY created_at DESC
LIMIT 5 OFFSET 5;

 

위 쿼리는 6번째부터 5개의 데이터를 보여줍니다.

즉, 첫 페이지가 LIMIT 5, 두 번째 페이지는 OFFSET 5, LIMIT 5 이렇게 되는 구조죠.

LIMIT 사용 시 주의사항 🔍

  • 정렬 없이 LIMIT만 쓰면, 어떤 기준으로 잘렸는지 예측 불가예요.
  • OFFSET은 데이터가 많아질수록 성능에 영향이 큽니다. 인덱스 최적화 고려해야 해요.
  • LIMIT만 단독으로 쓰면 랜덤 정렬처럼 보여질 수 있어요. ORDER BY필수로 붙여주세요!

💡 예시 테이블 요약

쿼리 설명
LIMIT 10 앞에서 10개만 가져옴
LIMIT 5 OFFSET 10 11번째부터 5개 가져옴
ORDER BY price DESC LIMIT 3 가격 높은 순으로 3개 상품 추출

4. 상위 10개 상품 추출 실습 🛒

이번에는 실무에서 정말 자주 나오는 실습을 해볼게요!

예를 들어 쇼핑몰이나 포털에서 "인기 상품 TOP 10" 목록을 보여줘야 할 때 어떻게 할까요?

바로 ORDER BYLIMIT의 조합이 필요한 순간입니다.

📊 실습: 판매량 기준 상위 10개 상품 조회

SELECT id, product_name, sales_count
FROM products
ORDER BY sales_count DESC
LIMIT 10;

 

이 쿼리는 products 테이블에서 sales_count가 많은 순서대로 상위 10개 상품을 추출합니다.

마케팅 페이지나 홈화면 인기 상품 영역에 쓰기 딱 좋은 쿼리죠!

🎯 실전 팁: 다양한 기준으로 정렬할 수 있어요

  • 별점 높은 순: ORDER BY rating DESC
  • 가격 낮은 순: ORDER BY price ASC
  • 리뷰 수 기준 정렬: ORDER BY review_count DESC

📋 다양한 정렬 조합 예시 테이블

쿼리 설명
ORDER BY price DESC LIMIT 10 가장 비싼 상품 10개
ORDER BY created_at DESC LIMIT 10 최근 등록된 상품 10개
ORDER BY rating DESC LIMIT 10 별점이 가장 높은 TOP10

⚠️ 순위 정보가 필요할 땐?

MySQL 기준으로는 ROW_NUMBER()RANK() 같은 윈도우 함수와 함께 LIMIT을 쓰면 순위 기반 추천 시스템도 구현할 수 있습니다.

 

 

5. ORDER BY와 LIMIT 함께 쓰기 꿀팁 🧪

지금까지 배운 ORDER BYLIMIT을 제대로 쓰기 위해선 둘을 같이 사용하는 패턴에 익숙해져야 합니다.

생각보다 조합이 중요하거든요!

📐 패턴 1: 정렬 후 제한

SELECT * FROM posts
ORDER BY created_at DESC
LIMIT 5;

 

이 패턴은 정렬이 먼저, 제한은 그 다음이에요.

최신순으로 정렬된 결과에서 상위 5개만 가져오는 방식이죠.

실무에선 이 구조가 기본이에요!

🧭 패턴 2: 여러 컬럼 정렬 + LIMIT

SELECT * FROM products
ORDER BY category ASC, sales_count DESC
LIMIT 10;

 

카테고리별로 정렬한 뒤, 각 카테고리 내에서 판매량 높은 순으로 정렬한 결과 중 상위 10개를 출력하는 예시입니다.

복합 정렬에도 LIMIT은 잘 작동합니다!

💡 만약 정렬을 생략한다면?

LIMIT만 사용하면 데이터베이스 엔진의 내부 처리 순서에 따라 무작위처럼 보이는 결과를 보여줄 수 있어요.

이건 매우 위험합니다.

정렬 없이 LIMIT 쓰는 건 금물!

📋 ORDER BY + LIMIT 활용 예시 모음

목적 SQL 예시
최신 게시글 3개 ORDER BY created_at DESC LIMIT 3
조회수 높은 글 1개 ORDER BY views DESC LIMIT 1
카테고리별 인기 상품 상위 5개 ORDER BY category, sales DESC LIMIT 5

🎁 보너스 팁: LIMIT 없이 정렬만 할 수도 있어요

꼭 LIMIT을 써야 하는 건 아니에요.

ORDER BY만으로도 결과를 보기 좋게 정렬할 수 있답니다.

하지만 화면에 딱 필요한 수만 보여주려면 LIMIT은 필수죠!

 

 

6. 실수하기 쉬운 포인트와 정리 ✍️

ORDER BY와 LIMIT은 간단해 보이지만, 초보자들이 자주 실수하는 포인트도 많아요.

특히 정렬 기준 없이 LIMIT만 쓰거나, 컬럼 타입을 착각해서 엉뚱한 결과를 얻는 경우도 많습니다.

여기에서 중요한 부분을 다시 정리해볼게요!

❌ 자주 하는 실수

  • 정렬 없이 LIMIT만 사용 → 결과가 매번 달라질 수 있어요!
  • ORDER BY할 때 컬럼명이 잘못되면 오류 발생 → 오타 조심!
  • OFFSET을 너무 크게 주면 성능 저하 → 페이징 처리 최적화 필요

📌 핵심 요약

  1. ORDER BY는 정렬 기준을 지정할 때 사용 (ASC: 오름차순, DESC: 내림차순)
  2. LIMIT은 조회할 행의 개수를 제한
  3. 두 문법은 함께 사용하는 것이 일반적
  4. OFFSET으로 페이징 구현 가능
  5. 정렬 기준 없이 LIMIT만 쓰는 건 위험!

🔚 마무리하며…

지금까지 SQL에서 ORDER BYLIMIT을 어떻게 활용하는지 배워봤어요.

정렬과 출력 개수 제한은 거의 모든 실무에서 필요한 기본 중의 기본입니다.

게시판, 상품 리스트, 페이징, 추천 리스트 등 정말 다양하게 쓰여요.

 

이제 여러분도 직접 실습해보면서 감을 익혀보세요.

꼭 한두 번 삽질(?)해보는 것도 실력 향상에 도움이 된답니다 😉

 

다음엔 RANK()GROUP BY 같은 조금 더 복잡한 쿼리로 또 만나요!

반응형
반응형

조건문과 연산자 실습예제 🧪 실무 데이터로 배우는 SQL 조건 활용법

"조건문을 제대로 쓰면 데이터도 내 맘대로 조작 가능!"
실제 회원과 상품 데이터를 대상으로 실습하며 조건문을 마스터해봅시다.

 

 

안녕하세요! 😊

이번 시간에는 SQL의 핵심 기능 중 하나인 조건문과 연산자를 직접 실습 예제로 배워볼 거예요.

단순한 WHERE 절은 물론이고, 실제 많이 쓰이는 회원 테이블, 상품 테이블 데이터를 기반으로, 조건을 걸어 원하는 데이터를 조회하고 수정해보는 경험을 할 수 있어요.

 

특히 이 글에서는 두 가지 핵심 실습을 진행합니다:

1. 회원 테이블에서 다양한 조건으로 회원 조회

2. 상품 테이블에서 조건에 따라 가격 일괄 변경

 

SQL 초보자도 이해할 수 있도록 차근차근 설명하고, 실습용 SQL도 바로 복사해 쓸 수 있게 정리했어요.

함께 시작해볼까요?

1. 실습에 사용할 테이블 구조 소개 🗂️

이번 실습에서는 회원 테이블(member)상품 테이블(product)을 사용합니다.

이 두 테이블은 실제 쇼핑몰이나 회원관리 시스템에서 자주 쓰이는 구조로, 실무 감각을 익히기에 딱 좋아요!

👤 member (회원 테이블)

컬럼명 데이터 타입 설명
id INT 회원 고유 ID
name VARCHAR(50) 회원 이름
age INT 나이
gender CHAR(1) 성별 (M/F)
join_date DATE 가입일

🛍️ product (상품 테이블)

컬럼명 데이터 타입 설명
id INT 상품 고유 ID
name VARCHAR(100) 상품명
price INT 가격
stock INT 재고 수량
category VARCHAR(30) 카테고리

이제 실습 준비는 끝났습니다!

다음부터는 이 테이블들을 활용해서, 조건문을 직접 사용해보는 실습을 진행할 거예요.

먼저 회원 테이블에서 조건에 맞는 회원 조회 실습부터 시작해볼게요! 😊

 

 

2. 회원 테이블에서 조건에 맞는 회원 조회하기 👤

회원 정보를 조회할 때는 다양한 조건을 사용할 수 있어요.

성별, 나이, 가입일, 이름 포함 여부 등 여러 조건을 조합하면 원하는 회원 데이터를 정확히 골라낼 수 있답니다.

✅ 예제 1. 나이가 30세 이상인 회원 조회

SELECT * FROM member WHERE age >= 30;

✅ 예제 2. 여성(F) 회원 중 20대만 조회

SELECT * FROM member
WHERE gender = 'F'
AND age BETWEEN 20 AND 29;

✅ 예제 3. 이름에 '김'이 들어가는 회원 조회

SELECT * FROM member
WHERE name LIKE '%김%';

 

%와일드카드로, 앞뒤 어떤 문자도 가능하다는 의미예요.

✅ 예제 4. 최근 1개월 이내 가입한 회원

SELECT * FROM member
WHERE join_date >= CURDATE() - INTERVAL 1 MONTH;

 

CURDATE()는 오늘 날짜를 반환하고, INTERVAL로 기간을 조절할 수 있어요. 주로 신규 회원 분석에 유용하죠.

📌 실전 팁

  • 조건이 많아질수록 AND, OR, 괄호를 적절히 사용하세요.
  • LIKE는 인덱스를 타지 않을 수 있으니 성능 유의!
  • 날짜 비교 시 INTERVAL 활용은 매우 유용합니다.

다음 파트에서는 상품 테이블을 조건에 따라 업데이트하는 실습을 진행해볼게요! 😎

 

 

3. 상품 테이블에서 특정 조건으로 가격 변경하기 💸

이번에는 product 테이블에서 조건에 맞는 상품들의 가격을 일괄 수정하는 실습을 진행할 거예요.

이건 마케팅이나 세일 적용 시 아주 흔하게 사용되는 기능이에요.

✅ 예제 1. 재고가 0인 상품 가격을 0으로 변경

UPDATE product
SET price = 0
WHERE stock = 0;

 

재고가 없는 상품은 판매 중지 처리의 의미로 가격을 0으로 설정하는 방식이에요.

✅ 예제 2. 카테고리가 ‘전자제품’이고, 가격이 50,000원 이상이면 10% 할인

UPDATE product
SET price = price * 0.9
WHERE category = '전자제품'
AND price >= 50000;

 

조건부 할인 이벤트에 자주 사용되는 패턴입니다.

AND 조건으로 범위를 제한해 안전하게 가격을 변경할 수 있어요.

✅ 예제 3. 특정 상품만 수동으로 가격 변경 (IN 활용)

UPDATE product
SET price = 19900
WHERE name IN ('USB 허브', '충전기');

 

IN 조건은 특정 상품 이름 목록을 직접 지정할 때 매우 유용합니다.

⚠️ UPDATE 쿼리 실행 전 주의할 점

  • WHERE 조건을 명확히 지정하세요. 실수로 전체 데이터 변경될 수 있어요.
  • SELECT 쿼리로 먼저 결과 확인 후 UPDATE 실행하는 습관을 들이세요.
  • 필요시 트랜잭션(START TRANSACTION → COMMIT/ROLLBACK)으로 보호

자, 이렇게 상품 테이블도 상황에 맞게 업데이트할 수 있다는 걸 확인했어요.

다음은 AND, OR, NOT 조합을 통한 조건문 활용 심화 실습으로 넘어갑니다! 😊

 

 

4. 복합 조건 조합 실습 AND/OR/NOT 활용하기 🔗

SQL 조건문은 단일 조건보다 여러 조건을 논리적으로 조합했을 때 진짜 위력을 발휘합니다.

AND, OR, NOT 같은 논리 연산자를 활용하면 복잡한 조건도 손쉽게 처리할 수 있어요.

자주 쓰이는 패턴을 예제로 살펴볼게요!

✅ 예제 1. 남성 중 30대 또는 40대 회원 조회

SELECT * FROM member
WHERE gender = 'M'
AND (age BETWEEN 30 AND 39 OR age BETWEEN 40 AND 49);

 

괄호 없이 작성하면 논리 우선순위에 따라 예상과 다른 결과가 나올 수 있으므로 괄호로 묶는 습관을 들이세요!

✅ 예제 2. ‘가전’ 카테고리 중 가격이 3만 이상 또는 재고 100 이상인 상품

SELECT * FROM product
WHERE category = '가전'
AND (price >= 30000 OR stock >= 100);

 

이 조건은 가전 카테고리 + 추가 조건을 조합한 예입니다.

OR 조건은 결과 범위를 넓히는 데 효과적이에요.

✅ 예제 3. 여성 회원 중, 이름에 ‘김’이 없고 40세 이상인 사람

SELECT * FROM member
WHERE gender = 'F'
AND NOT name LIKE '%김%'
AND age >= 40;

 

NOT 연산자는 부정 조건을 만들 때 유용합니다. 특정 조건을 제외하고 싶을 때 사용하세요.

📌 실무 팁: 논리 연산자 우선순위 정리

연산자 우선순위 설명
NOT 1순위 조건을 부정
AND 2순위 모두 참일 때
OR 3순위 하나라도 참이면

정리하자면,

조건이 복잡할수록 괄호로 조건을 묶는 습관을 들이면 실수 없이 쿼리를 작성할 수 있어요! 😊

 

다음은 마지막으로 실무에서 자주 쓰이는 조건 조합 예제들을 모아볼게요.

 

 

5. 다양한 실무 패턴 예제 모음 🎯

실무에서는 WHERE 절의 조건을 단순히 쓰는 것이 아니라, 특정 패턴에 따라 반복적으로 사용되는 경우가 많아요.

이런 실전 패턴을 익혀두면 문제를 빠르게 해결하고, 효율적인 쿼리 작성을 할 수 있습니다.

아래에 대표적인 실무 패턴 예제를 정리해보았어요!

📌 회원 관련 자주 쓰는 조건문

목적 예시 쿼리
성별별 회원 수 확인 SELECT gender, COUNT(*) FROM member GROUP BY gender;
가입일 기준 최근 회원 10명 SELECT * FROM member ORDER BY join_date DESC LIMIT 10;
40대 여성 회원만 추출 SELECT * FROM member WHERE gender = 'F' AND age BETWEEN 40 AND 49;

📌 상품 관련 자주 쓰는 조건문

목적 예시 쿼리
가격 상위 5개 상품 SELECT * FROM product ORDER BY price DESC LIMIT 5;
재고가 0인 상품 조회 SELECT * FROM product WHERE stock = 0;
카테고리별 상품 평균 가격 SELECT category, AVG(price) FROM product GROUP BY category;

🧠 조건문 작성 실전 팁

  • WHERE 조건은 많을수록 가독성 확보가 중요 — 줄바꿈, 괄호 적극 활용
  • IN, BETWEEN, LIKE은 실무에서 정말 자주 쓰이는 필수 연산자
  • 먼저 SELECT로 조건을 테스트한 후, UPDATEDELETE 적용은 실수 방지 핵심!

자, 이제 실무에서도 쓸 수 있는 수준으로 조건문을 익히셨습니다!

 

 

6. 마무리 📌

이번 포스팅에서는 SQL 조건문과 연산자를 활용한 다양한 실습 예제를 통해 데이터를 선택하고, 수정하는 방법을 실전 위주로 배워보았습니다.

단순히 문법만 이해하는 것이 아니라, 실무에서 바로 사용할 수 있는 패턴까지 익히셨다면 훌륭하게 마스터하신 거예요! 👏

🎯 오늘 배운 핵심 요약

  • WHERE 조건문은 데이터를 추출하거나 수정할 때 반드시 사용
  • 비교 연산자(=, <>, >, <, BETWEEN, LIKE)로 조건 세분화
  • 논리 연산자(AND, OR, NOT) 조합으로 복잡한 조건 처리
  • 괄호()로 조건 우선순위 명확히 하여 오류 방지
  • UPDATE 조건문은 반드시 WHERE 확인 필수!

💡 실전 활용 팁

  • 조건문 테스트는 SELECT 쿼리로 먼저 확인하고 실행하세요.
  • BETWEENLIKE는 범위·문자열 검색에 유용하지만 성능에 주의!
  • 실무에서는 재고 기반 할인, 신규 회원 필터 같은 패턴이 반복됩니다.
  • 꼭 필요한 경우가 아니라면 DELETE, UPDATE는 백업 후 진행이 안전해요.

이제 여러분도 단순한 쿼리를 넘어서, 조건 조합으로 실무형 쿼리를 작성할 수 있는 단계에 오르셨습니다.🚀

반응형
반응형

파이썬 자료형 완전 정복: 숫자형, 문자형, 불(bool) 이해하기

"숫자형이랑 문자형, 그리고 불 자료형까지, 이 3가지 개념만 확실히 잡아도 파이썬의 절반은 이해한 거예요!"

 

 

안녕하세요, 여러분! 😀
오늘은 파이썬을 처음 접하는 분들이 반드시 이해하고 넘어가야 할 핵심 개념, 바로 자료형(Data Type)에 대해 다뤄볼 거예요.

그 중에서도 가장 자주 사용되고, 초보자들이 혼동하기 쉬운 숫자형(Number), 문자형(String), 불형(Bool)에 초점을 맞춰 설명할게요.

자료형은 데이터를 다룰 때의 기본 재료 같은 거예요.

이 재료들이 어떻게 다르고, 언제 어떤 걸 써야 하는지 알면, 코딩이 훨씬 쉬워집니다!

그럼 지금부터 같이 알아볼까요? 😊

1. 숫자형(Number)의 모든 것 🧮

숫자형은 숫자 데이터를 저장할 수 있는 자료형입니다.

우리가 일상에서 사용하는 정수, 소수(실수), 심지어 8진수나 16진수까지 표현할 수 있어요.

파이썬에서는 숫자형을 자동으로 구분해주기 때문에,

int(정수), float(실수), complex(복소수)로 나뉘며,

가장 기본적인 계산부터 과학 연산까지 다룰 수 있습니다.

① 숫자형 종류와 예시

자료형 예시 설명
정수형 (int) 10, -3, 0 소수점 없는 정수
실수형 (float) 3.14, -0.01, 1.0 소수점을 포함한 숫자
8진수 0o12 8진수 표현, 출력 시 10진수로 변환됨
16진수 0x1A 16진수 표현, 출력 시 10진수로 변환됨

② 숫자형 연산자

파이썬에서는 다양한 수학 연산자를 제공합니다.

대부분의 연산은 직관적이라서 계산기 쓰듯이 사용하면 돼요.

  • +: 덧셈
  • -: 뺄셈
  • *: 곱셈
  • /: 나눗셈 (실수)
  • //: 나눗셈 (몫)
  • %: 나머지
  • **: 제곱

③ 실습 예제 🎯

# 숫자형 예제
a = 10
b = 3

print(a + b)   # 13
print(a / b)   # 3.333...
print(a // b)  # 3
print(a % b)   # 1
print(a ** b)  # 1000

 

이처럼 숫자형 자료형은 계산, 반복문, 조건문 등 거의 모든 코드에 사용돼요.

그래서 반드시! 정확히 이해하고 자주 연습하는 게 중요합니다. 😉

 

 

2. 문자형(String)의 세계 ✍️

문자형은 문자, 단어, 문장을 다룰 때 사용하는 자료형이에요.

즉, 이름, 이메일 주소, 설명, 텍스트 등 글자 데이터를 처리할 때 꼭 필요하죠.

① 문자열 만들기

문자열은 "큰따옴표" 또는 '작은따옴표'로 감싸서 만들 수 있어요.

여러 줄을 쓰고 싶을 땐 """큰따옴표 3개""" 또는 '''작은따옴표 3개'''를 쓰면 됩니다.

msg1 = "Hello, Python!"
msg2 = '파이썬은 재밌어요!'
msg3 = """여러 줄도
이렇게 쓸 수 있어요."""

② 문자열 다루기 기초

  • + 연산자: 문자열 연결
  • * 연산자: 문자열 반복
  • len(): 문자열 길이
a = "Hello"
b = "World"
print(a + " " + b)     # Hello World
print(a * 3)           # HelloHelloHello
print(len(b))          # 5

③ 문자열 인덱싱과 슬라이싱

문자열도 리스트처럼 인덱싱(indexing)슬라이싱(slicing)이 가능해요.

txt = "Python"
print(txt[0])     # P
print(txt[-1])    # n
print(txt[1:4])   # yth

④ 문자열 포맷팅 (formatting)

문자열 안에 변수나 값을 넣고 싶을 땐 format() 또는 f-string을 사용해요.

name = "철수"
age = 25

# format()
msg = "이름은 {}이고 나이는 {}세입니다.".format(name, age)

# f-string
msg2 = f"이름은 {name}이고 나이는 {age}세입니다."

print(msg)
print(msg2)

 

문자형 자료형은 사용자 입력 처리, 출력 포맷 설정, 텍스트 조작 등 거의 모든 프로젝트에 쓰여요.

초보일수록 자주 연습하고 다양한 함수를 직접 써보는 게 중요하죠!

 

 

3. 불(bool)형, 참과 거짓의 판단자 ⚖️

불 자료형은 프로그래밍에서 참(True)거짓(False)을 나타내는 아주 중요한 자료형이에요.

조건문, 반복문, 제어문 등 논리적인 판단이 필요한 거의 모든 부분에서 필수적으로 사용돼요.

① 불형의 기본

  • True: 참 (1과 같음)
  • False: 거짓 (0과 같음)
a = True
b = False

print(type(a))   # <class 'bool'>
print(3 > 1)     # True
print(5 == 10)   # False

② bool() 함수

bool() 함수는 주어진 값을 참(True) 또는 거짓(False)으로 변환해주는 함수예요.

이걸 이용하면 어떤 값이 '비어 있는지', '0인지 아닌지' 쉽게 판단할 수 있어요.

print(bool(1))         # True
print(bool(0))         # False
print(bool("hello"))   # True
print(bool(""))        # False
print(bool([]))        # False
print(bool([1, 2]))    # True

③ 조건문에서의 활용

불형은 조건문(if)과 함께 사용되면 진가를 발휘해요.

조건이 참이면 실행, 거짓이면 건너뛰는 방식이죠.

score = 85

if score >= 90:
    print("A등급입니다.")
elif score >= 80:
    print("B등급입니다.")
else:
    print("C등급 이하입니다.")

④ bool이 중요한 이유?

불 자료형은 결정적인 분기점을 만들어주는 도구예요.

예를 들어

로그인 상태인지 아닌지, 파일이 비어 있는지, 조건을 만족하는지 등을 판단할 때 모두 bool을 써요.

즉, "할까 말까를 판단하는 역할"이 바로 bool인 거죠.

초보자일수록 if문 안에 뭐가 True고 뭐가 False인지 확실히 감을 잡는 게 중요해요. 😊

 

 

4. 숫자형 vs 문자형 vs 불형 비교 🆚

지금까지 배운 숫자형, 문자형, 불형은 모두 파이썬에서 기본 중의 기본 자료형이에요.

하지만 가끔은 이 세 가지가 헷갈릴 수도 있고, 어떤 걸 써야 할지 고민될 수 있죠.

그래서 한눈에 비교할 수 있게 정리해봤어요!

① 기본 비교표

구분 숫자형(Number) 문자형(String) 불형(Bool)
용도 수학 계산, 반복문 텍스트 저장, 메시지 출력 조건 판단, 흐름 제어
형식 정수, 실수 큰따옴표/작은따옴표 True, False
예시 10, 3.14 "Hello", 'Python' 3 > 2 → True
연산 +, -, *, /, ** 등 +, *, len(), format() 논리 연산자 (and, or, not)

② 이런 실수 하지 마세요! 😅

  • 숫자와 문자열을 덧셈하려고 할 때 "10" + 2 → 에러!
  • 불형(True/False)을 문자처럼 출력하려고 할 때 큰따옴표 안에 써야 함
  • if 조건에서 숫자 0, 빈 문자열 "", 빈 리스트 []는 모두 False로 인식됨

자료형 간의 차이점과 용도를 명확히 아는 것만으로도 코딩 실수가 확 줄어들어요.

초보자일수록 눈에 보이도록 비교표를 만들어보는 습관도 아주 좋아요! 👀

 

 

5. 실습 예제로 완전 정복하기 💪

이제 이론은 충분히 살펴봤으니, 실습으로 확실히 익혀볼 시간이에요!

아래 실습 예제는 숫자형, 문자형, 불형을 모두 활용해서 실전처럼 코딩해보는 예제입니다.

꼭 직접 따라 해보세요! 🔍

① 실습 1: 나이 계산 프로그램

# 사용자 입력 받기
name = input("이름을 입력하세요: ")
birth_year = int(input("출생 연도를 입력하세요: "))

# 나이 계산
current_year = 2025
age = current_year - birth_year

# 결과 출력
print(f"{name}님의 나이는 {age}세입니다.")

 

이 예제에서는 문자형으로 입력받은 이름과 숫자형으로 나이를 계산하고, f-string을 통해 멋지게 출력하고 있어요!

② 실습 2: 합격 여부 판단

score = int(input("시험 점수를 입력하세요: "))
is_passed = score >= 60

if is_passed:
    print("축하합니다! 합격입니다 🎉")
else:
    print("아쉽지만 불합격입니다 😢")

 

is_passed불형(bool)으로 처리되어 조건문에 바로 활용되고 있어요.

논리적 판단이 필요한 경우 이렇게 불형을 쓰면 코드가 깔끔하고 직관적이에요!

③ 실습 3: 문자열 조작 퀴즈

text = input("아무 문장이나 입력해보세요: ")

print("총 글자 수:", len(text))
print("앞 5글자:", text[:5])
print("모두 대문자로:", text.upper())
print("Python이라는 단어 포함 여부:", "Python" in text)

 

이 실습은 문자형 함수불형 연산을 함께 쓰는 좋은 예예요.

특히 in 키워드를 통해 특정 문자열 포함 여부를 쉽게 판단할 수 있죠!

④ 정리

  • 숫자형은 연산과 반복에 강하다!
  • 문자형은 입력, 출력, 메시지 처리에 필수!
  • 불형은 흐름 제어와 조건 판단의 핵심!

이 세 가지 자료형만 잘 익혀도 파이썬 기초를 완전히 꿰뚫었다고 할 수 있어요.

이제 여러분도 자신 있게 실습에 도전해보세요! 😎

 

 

마무리 🧠

여기까지 따라오신 여러분, 정말 고생 많으셨습니다! 👏

오늘 우리가 함께 배운 내용은 파이썬의 가장 핵심적인 자료형 3가지였어요

숫자형(Number),

문자형(String),

불형(Bool).

 

이 세 가지는 파이썬뿐 아니라 대부분의 프로그래밍 언어에서도 공통적으로 존재하고, 아주 자주 사용돼요.

처음엔 낯설고 어려울 수 있지만, 코드를 직접 작성하고 실행해보면 어느 순간 자연스럽게 '아~ 이럴 때 숫자형을 쓰는구나', '문자형은 이렇게 조작하는 거구나' 하고 감이 오기 시작할 거예요.

 

앞으로 조건문, 반복문, 함수, 클래스 등 더 복잡한 개념을 배우더라도 자료형이 기초가 되어야 모든 것이 연결되니까요.

그러니까 지금 배운 내용을 자주 복습하고, 실습을 반복하는 습관을 꼭 들이시길 바랍니다!

그럼 다음 글에서 더 유익한 내용으로 다시 만나요 😊

반응형

+ Recent posts