Python 표준 라이브러리는 무작위 숫자를 처리하는 다양한 도구를 제공합니다. 많은 응용 프로그램에서 일관된 또는 고정된 무작위 숫자 열을 생성해야 할 수도 있으며, 이는 특히 테스트나 실험 재현을 위한 것입니다. 본 글은 Python의 random
모듈을 사용하여 고정된 무작위 숫자 열을 생성하는 방법에 중점을 둡니다. 또한 명시적으로 지정되지 않을 때 무작위 시드가 어떻게 생성되는지에 대해서도 설명합니다.
random
모듈 활용random
함수 이해Python의 random
함수는 0에서 1 사이의 범위에서 무작위 부동 소수점을 반환합니다. 이 범위는 0을 포함하고 1을 제외합니다.
import random
print(random.random()) # 예시 출력: 0.7391765812285283
동일한 무작위 숫자 열을 생성하려면 Python에서 시드 값을 설정할 수 있습니다. 시드가 명시적으로 설정되지 않으면 시스템 시간 또는 프로세스 ID가 시드 값으로 사용될 수 있습니다.
import random
random.seed(42)
print(random.random()) # 출력: 0.6394267984578837
시드가 설정되지 않으면 시스템 매개변수와 같은 시간을 기반으로 무작위성이 초기화되므로 시퀀스가 다른 실행에서 변경됩니다:
print(random.random()) # 출력은 매 번 달라집니다
다음은 시드를 사용하여 고정 무작위 숫자 열을 생성하는 방법입니다:
random.seed(10)
for i in range(5):
print(random.randint(1, 10)) # 출력: 10, 9, 1, 8, 10
Python의 random
모듈은 shuffle
과 choice
와 같은 함수도 제공합니다.
shuffle
: 이 함수는 주어진 순서를 섞습니다.arr = [1, 2, 3, 4, 5]
random.shuffle(arr)
print(arr) # 출력: [2, 1, 4, 5, 3]
choice
: 이 함수는 비어 있지 않은 순서에서 무작위 원소를 반환합니다.print(random.choice(['사과', '바나나', '체리'])) # 출력: 체리
요약하자면, Python의 random
모듈은 일관된 테스트와 실험에 필수적인 고정된 무작위 숫자 열을 쉽게 생성하는 방법을 제공합니다. 시드 설정의 원칙을 이해하고 shuffle
과 choice
와 같은 함수를 활용하면 개발자들은 다양한 응용 프로그램에서 무작위화를 처리하는 강력한 도구 모음을 갖게 됩니다.
random.shuffle
메서드와 고정 시드를 함께 사용하면 목록을 일관된 패턴으로 섞을 수 있습니다.random.choice
를 활용하면 목록에서 무작위 원소를 일관되게 선택할 수 있습니다.random
모듈은 진정한 무작위성을 제공하지 않으므로 암호학적 목적에는 적합하지 않습니다. 이것은 모델링, 시뮬레이션 및 기타 보안과 관련되지 않은 작업을 위해 설계되었습니다.[Python] 비트 연산자 다양한 예제를 통해 이해하기 |
---|
[Python] 관계 연산자 다양한 예제를 통해 이해하기 |
[Python] 'zsh: command not found: python' 오류 해결하기 |
[Python] 할당 연산자 다양한 예제를 통해 이해하기 |
[Python] 산술 연산자 다양한 예제를 통해 이해하기 |
CloneCoding
한 줄의 코드에서 시작되는 혁신!