random 모듈은 의사 난수 생성을 위한 도구입니다. 시뮬레이션, 게임, 테스트 데이터 생성 등에 사용합니다. 보안용으로는 secrets 모듈을 사용하세요.
언제 이 치트시트를 보나?
- 무작위 숫자를 생성해야 할 때
- 리스트에서 랜덤 선택이 필요할 때
- 셔플, 샘플링이 필요할 때
핵심 함수
| |
최소 예제
1. 정수 난수
| |
2. 실수 난수
| |
3. 리스트에서 선택
| |
4. 가중치 선택
| |
5. 셔플
| |
6. 시드 설정 (재현 가능)
| |
7. 분포 함수
| |
8. 실용 예제
| |
9. 가중치 로또/가챠 시스템
| |
10. Random 인스턴스 (독립적 생성기)
| |
random vs secrets
| |
자주 하는 실수
1. sample에서 k가 너무 클 때
| |
2. 빈 시퀀스에서 choice
| |
3. shuffle 반환값
| |
한눈에 정리
| 함수 | 용도 | 예시 |
|---|---|---|
randint(a, b) | 정수 (a~b 포함) | randint(1, 6) |
random() | 0~1 미만 실수 | random() |
choice(seq) | 하나 선택 | choice(['a', 'b']) |
choices(seq, k=n) | n개 복원 선택 | choices([1,2,3], k=5) |
sample(seq, k=n) | n개 비복원 선택 | sample([1,2,3], k=2) |
shuffle(seq) | 제자리 섞기 | shuffle(list) |
seed(n) | 시드 설정 | seed(42) |
![Featured image of post [Python Cheatsheet] 48. random - 난수 생성과 무작위 선택](/post/python-cheatsheet/random-module-guide-efficient-random-number-generation-examples/wordcloud_hu_6829043425ecf875.png)
![[Python Cheatsheet] 46. math & statistics - 수학/통계 함수](/post/python-cheatsheet/math-statistics-functions-guide-essential-formulas-examples/wordcloud_hu_bed0ef98794d157a.png)
![[Python Cheatsheet] 47. decimal & fractions - 정밀 수치 연산](/post/python-cheatsheet/decimal-fraction-precision-finance-scientific-guide/wordcloud_hu_cfd96728ef91be24.png)
![[Python Cheatsheet] 48. random - 난수 생성과 무작위 선택](/post/python-cheatsheet/random-module-guide-efficient-random-number-generation-examples/wordcloud_hu_9cf9ac9b3973818e.png)
![[Python Cheatsheet] 49. uuid - 고유 식별자 생성](/post/python-cheatsheet/unique-id-generation-uuid-module-guide/wordcloud_hu_876fcc3ecaf27d7e.png)
![[Python Cheatsheet] 50. hashlib & secrets - 해시/보안 난수 패턴](/post/python-cheatsheet/hashlib-secrets-hash-random-security-tips-token-checksum-digest/wordcloud_hu_46ad6e374be804a2.png)
![[Python Cheatsheet] 17. argparse & CLI - 커맨드라인 인자 처리](/post/python-cheatsheet/argparse-command-line-interface-guide-core-cli-arguments/wordcloud_hu_9a192cb68b9a0baf.png)
![[Python Cheatsheet] 09. Decorators - 함수/클래스 데코레이터](/post/python-cheatsheet/guide-decorators-functions-classes-wrapper-examples-reference/wordcloud_hu_5116df45caa4e900.png)
![[Python Cheatsheet] 12. Context Managers - with문/리소스 관리](/post/python-cheatsheet/context-manager-with-resource-management-best-practices-guide/wordcloud_hu_c4127dc6ae73e7db.png)