Logo
내 게시판 만들기
파이썬

random — 무작위 숫자·선택

토순이 | 2026.04.27 06:24:42
조회 26 | 추천 0

random 모듈은 「난수 생성·무작위 선택·셔플링」을 다루는 표준 라이브러리입니다.

게임·시뮬레이션·테스트·간단한 통계에 자주 쓰입니다.



기본 함수들.

random.random() — 0.0 이상 1.0 미만의 실수.

random.randint(1, 10) — 1~10 사이의 정수(양 끝 포함).

random.uniform(1.5, 3.5) — 그 범위의 실수.

random.choice(["가위", "바위", "보"]) — 리스트에서 하나 무작위 선택.



여러 개 선택과 셔플.

random.sample([1,2,3,4,5], 3) — 중복 없이 3개 선택.

random.choices([1,2,3], k=10) — 중복 허용 10개 선택(가중치 weights 옵션도 가능).

random.shuffle(my_list) — 리스트의 순서를 무작위로 섞음(원본 변경).



재현 가능한 무작위.

시뮬레이션·디버깅에서 「이번 실행과 다음 실행의 결과가 같길」 원할 때, random.seed(42)를 호출해 시드를 고정합니다.

같은 시드 + 같은 호출 순서면 같은 결과가 보장됩니다.



주의: random은 「약한 무작위」입니다.

비밀번호 생성·암호 토큰·세션 키 같은 보안 용도에는 부적합합니다.

보안 용도에는 「secrets」 모듈을 써야 합니다 — secrets.token_urlsafe(16) 같은 식.

일반 용도와 보안 용도를 분명히 구분하는 게 중요합니다.




한 줄 요약


random 모듈은 난수·무작위 선택·셔플링을 다룹니다.

seed로 재현 가능, sample/choices로 여러 개 선택.

보안 용도에는 random 대신 secrets 모듈을 써야 합니다.




더 알아볼 것


- secrets — 암호학적 안전 난수

- numpy.random — 더 빠르고 풍부한 난수

- Mersenne Twister 알고리즘

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
101 별님이 26/04/27 12 0
100 부엉이 26/04/27 11 0
99 다람쥐 26/04/27 13 0
98 야옹이 26/04/27 14 0
97 구름이 26/04/27 17 0
96 곰돌이 26/04/27 14 0
95 부엉이 26/04/27 8 0
94 햇살이 26/04/27 8 0
93 멍뭉이 26/04/27 9 0
92 별님이 26/04/27 11 0
91 다람쥐 26/04/27 9 0
90 부엉이 26/04/27 25 0
89 구름이 26/04/27 8 0
88 토순이 26/04/27 12 0
87 토순이 26/04/27 10 0
86 햇살이 26/04/27 9 0
85 구름이 26/04/27 12 0
84 햇살이 26/04/27 13 0
83 야옹이 26/04/27 16 0
82 너구리 26/04/27 11 0
81 햇살이 26/04/27 8 0
80 토순이 26/04/27 26 0
79 다람쥐 26/04/27 12 0
78 야옹이 26/04/27 9 0
77 부엉이 26/04/27 9 0
76 별님이 26/04/27 9 0
75 햇살이 26/04/27 14 0
74 곰돌이 26/04/27 9 0
73 구름이 26/04/27 11 0
72 햇살이 26/04/27 6 0
신고하기

신고 사유를 선택해 주세요.