반응형

random 모듈은 난수를 생성하는 다양한 기능을 제공합니다. 랜덤 숫자를 생성하거나 리스트에서 무작위로 값을 선택하는 등의 작업을 수행할 수 있습니다.
랜덤 기능은 게임 개발, 데이터 샘플링, 보안 및 시뮬레이션과 같은 다양한 분야에서 활용됩니다.
🔹 1. random.randint() - 랜덤 정수 생성
정해진 범위에서 랜덤 정수를 생성할 때 randint(a, b)를 사용합니다.
✅ 예제 1: 랜덤 정수 생성
import random
num = random.randint(1, 10)
print("랜덤 정수:", num)
출력 예시:
랜덤 정수: 7
📌 설명:
- random.randint(1, 10)은 1에서 10 사이의 랜덤 정수를 반환합니다.
- 실행할 때마다 다른 값이 출력될 수 있습니다.
🔹 2. random.random() - 0~1 사이의 난수 생성
0과 1 사이의 실수(float) 난수를 생성하려면 random.random()을 사용합니다.
✅ 예제 2: 0~1 사이의 난수 생성
num = random.random()
print("랜덤 실수:", num)
출력 예시:
랜덤 실수: 0.7312345678
📌 설명:
- random.random()은 0.0 이상 1.0 미만의 실수를 반환합니다.
🔹 3. random.uniform() - 특정 범위 내 실수 생성
특정 범위 내에서 실수를 랜덤하게 생성하려면 random.uniform(a, b)를 사용합니다.
✅ 예제 3: 랜덤 실수 생성 (특정 범위)
num = random.uniform(1.5, 3.5)
print("랜덤 실수 (1.5~3.5):", num)
출력 예시:
랜덤 실수 (1.5~3.5): 2.71892
📌 설명:
- random.uniform(1.5, 3.5)는 1.5에서 3.5 사이의 랜덤 실수를 반환합니다.
🔹 4. random.choice() - 리스트에서 랜덤 선택
리스트에서 무작위로 하나의 값을 선택하려면 random.choice()를 사용합니다.
✅ 예제 4: 리스트에서 무작위 선택
items = ['🍎', '🍌', '🍊', '🍇']
choice = random.choice(items)
print("랜덤 선택:", choice)
출력 예시:
랜덤 선택: 🍊
📌 설명:
- random.choice(items)는 리스트 items에서 무작위로 하나의 요소를 선택합니다.
🔹 5. random.sample() - 리스트에서 여러 개 무작위 선택
리스트에서 중복 없이 여러 개를 선택하려면 random.sample()을 사용합니다.
✅ 예제 5: 여러 개의 값 선택
items = ['🍎', '🍌', '🍊', '🍇', '🍓']
choices = random.sample(items, 3)
print("랜덤 선택 (3개):", choices)
출력 예시:
랜덤 선택 (3개): ['🍎', '🍊', '🍓']
📌 설명:
- random.sample(items, 3)는 리스트에서 중복 없이 3개의 요소를 선택합니다.
🔹 6. random.shuffle() - 리스트 섞기
리스트의 요소를 무작위로 섞으려면 random.shuffle()을 사용합니다.
✅ 예제 6: 리스트 섞기
cards = ['♠', '♥', '♦', '♣']
random.shuffle(cards)
print("섞은 결과:", cards)
출력 예시:
섞은 결과: ['♦', '♠', '♣', '♥']
📌 설명:
- random.shuffle(cards)는 리스트의 요소를 무작위로 섞습니다.
🔹 7. random.seed() - 난수 고정하기
random.seed(n)을 설정하면 항상 동일한 난수가 생성됩니다.
✅ 예제 7: 동일한 난수 생성
random.seed(42)
print(random.randint(1, 100))
print(random.randint(1, 100))
출력 예시:
81
14
📌 설명:
- random.seed(42)를 설정하면 항상 같은 난수 값이 출력됩니다.
🔹 8. 마무리
이번 문서에서는 random 모듈을 활용한 다양한 난수 생성 방법을 학습했습니다.
✅ 핵심 요약
- random.randint(a, b): 범위 내 정수 난수 생성
- random.random(): 0~1 사이 실수 난수 생성
- random.uniform(a, b): 특정 범위 내 실수 난수 생성
- random.choice(seq): 리스트에서 랜덤 요소 선택
- random.sample(seq, n): 리스트에서 중복 없이 n개 선택
- random.shuffle(seq): 리스트 요소를 무작위로 섞기
- random.seed(n): 동일한 난수 생성 (재현 가능성 확보)
반응형
'IT > Python Basic' 카테고리의 다른 글
| [Python] 초급 퀴즈15 - 딕셔너리 메서드, 키/값 접근, 집합 연산 (0) | 2025.02.19 |
|---|---|
| [Python] 초급 개념19 - collections 모듈 활용 (0) | 2025.02.19 |
| [Python] 초급 개념18 - enumerate와 zip 활용 (0) | 2025.02.19 |
| [Python] 초급 개념17 - lambda 함수와 map(), filter(), reduce() (0) | 2025.02.19 |
| [Python] 초급 개념15 - 날짜와 시간 (datetime, time 모듈) (0) | 2025.02.19 |
| [Python] 초급 개념14 - 모듈과 패키지 (import, from, as) (0) | 2025.02.18 |
| [Python] 초급 개념13 - 클래스와 객체 (OOP 기본 개념) (0) | 2025.02.18 |
| [Python] 초급 개념12 - 리스트 컴프리헨션 (0) | 2025.02.18 |
댓글