빠른 질문이 있습니다. 나는 현재 random.choice()를 사용하여 목록에서 선택하고 왜 항상 같은 항목을 호출하는지 궁금해하고있다. 일단 프로그램을 중지하고 다시 시작하면 변경됩니다. 아무도 나에게 무작위 클래스가 어떻게 작동하는지 설명 할 수 있을까요?random.choice 항상 동일
감사
빠른 질문이 있습니다. 나는 현재 random.choice()를 사용하여 목록에서 선택하고 왜 항상 같은 항목을 호출하는지 궁금해하고있다. 일단 프로그램을 중지하고 다시 시작하면 변경됩니다. 아무도 나에게 무작위 클래스가 어떻게 작동하는지 설명 할 수 있을까요?random.choice 항상 동일
감사
이 가장 가능성이 무엇을하고 있는지에 대한 나의 추측이다 :
같은 씨앗과 실제 임의의 클래스를 사용하고, 새로운 인스턴스마다 제작하는 경우import random
l = [1,2,3,4,5]
random.Random(500).choice(l)
# 4
random.Random(500).choice(l)
# 4
random.Random(500).choice(l)
# 4
, 그런 다음 동일한 의사 랜덤 작업을 수행하고 있습니다. 이것은 실제로 향후 루틴 실행시 재현성있는 임의 화를 가능하게하는 기능 (시드)입니다.
l = [1,2,3,4,5]
r = random.Random(500) # seed number is arbitrary
r.choice(l)
r.choice(l)
을 또는 편리한 방법을 사용합니다 :
하나는 씨앗이 할 random.choice(l)
이
나는 이것이 가능하지 않다고 말할 것이다. "프로그램을 멈추고 다시 시작하면 변경됩니다." –
는'()'파괴되지 않는 선택합니다. 오류가 코드의 어딘가에 있으므로 코드를 보여주십시오. –
http://dilbert.com/strips/comic/2001-10-25/ –
프로그램의 길이를 사용할 때마다 같은 값으로'random.Random (some_value)'를 사용하고 있습니까? – agf