Python에서 난수를 생성하는 방법(random 모듈)

Python에서 난수를 생성하는 방법을 알아보세요. randrange, randint 및 균일 부동 소수점 생성을 시딩 제어와 비교합니다.

Editor에서 이 솔루션을 사용해 보세요.

개요

난수 생성은 게임 프로그래밍, 데이터 세트에서 무작위 항목 선택, 암호화 애플리케이션 작성 및 통계 시뮬레이션 수행의 핵심 요구 사항입니다. Python은 의사 난수 생성을 처리하기 위해 `random`이라는 전용 내장 라이브러리를 제공합니다.

특정 범위 내에서 임의의 정수가 필요한 경우 `random.randint(a, b)` 함수가 가장 일반적인 도구이며 두 끝점을 모두 포함하는 임의의 정수를 반환합니다. 또는 `random.random()`은 0.0(포함)과 1.0(제외) 사이의 부동 소수점 숫자를 생성하며, 이는 사용자 정의 경계에 맞게 수학적으로 크기를 조정할 수 있습니다.

시뮬레이션과 테스트를 반복 가능하게 만들려면 `random.seed()` 함수를 사용할 수 있습니다. 시드 정수를 제공하면 코드가 실행될 때마다 생성된 숫자의 순서가 동일함을 보장합니다. 높은 보안이 필요한 암호화 작업(예: 토큰 생성)의 경우 '비밀' 모듈을 선호하는 대신 표준 의사 난수 생성기를 피해야 합니다.

코드 및 실행 출력

이 스크립트는 무작위 모듈을 사용하여 임의의 정수, 부동 소수점을 생성하고 요소를 선택하는 방법을 보여줍니다.

import random

# Setting a seed for deterministic output in this example
random.seed(42)

# 1. Generate a random integer between 1 and 10 (inclusive)
random_int = random.randint(1, 10)
print("Random Integer (1-10):", random_int)

# 2. Generate a random float between 0.0 and 1.0
random_float = random.random()
print("Random Float (0-1):", round(random_float, 4))

# 3. Select a random element from a list
fruits = ["apple", "banana", "cherry"]
random_choice = random.choice(fruits)
print("Random Choice:", random_choice)
터미널 출력
Random Integer (1-10): 2
Random Float (0-1): 0.025
Random Choice: banana

단계별 구현

  • 스크립트 시작 부분에서 임의 모듈을 가져옵니다.
  • 두 끝점을 모두 포함하는 임의의 정수를 생성하려면 Random.randint(min, max)를 사용하십시오.
  • 0.0과 1.0 사이의 무작위 부동 소수점을 생성하려면 random.random()을 사용하십시오.

자주 묻는 질문

사용자 정의 범위 내에서 임의의 부동 소수점을 어떻게 생성합니까?

a와 b 사이의 임의의 부동 소수점 숫자를 얻으려면 Random.uniform(a, b)를 사용하십시오.

무작위 모듈은 암호화 사용에 안전합니까?

아니요, Random 모듈은 의사 무작위이므로 보안에 민감한 목적으로 사용하면 안 됩니다. 대신 비밀 모듈을 사용하세요.

관련 주제

권장 Python 리소스

관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.