본문 바로가기
파이썬

파이썬은 재귀를 사용하지 않고 숫자 집합을 제외하는 난수를 생성 할 수 있습니까?

by º기록 2021. 2. 16.
반응형


즉,
Let's imagine I wanted X to be a random number that's not in
range(a - b, a + b)
Can I do this on the first pass,
or
1. Do I have to constantly generate a number,
2. Check if in range(),
3. 세척 린스?

재귀 함수를 작성하고 싶지 않은 이유는
1. it 'feels like' I should not have to
2. the set of numbers I'm doing this for could actually end up being quite large, and
... 스택 오버플로가 나쁘다고 들었는데,이 작업에 지나치게주의를 기울일 수 있습니다.

나는 그것을 수행하는 멋진 Pythonic, 비재 귀적 방법이 있다고 확신합니다.

 

해결 방법

 

random.choice ()를 사용하십시오. 이 예에서 a는 하한이고 b와 c 사이의 범위는 건너 뛰고 d는 상한입니다.

import random
numbers = range(a,b) + range(c,d)
r = random.choice(numbers)

 

참조 페이지 https://stackoverflow.com/questions/10666661

 

 

반응형

댓글