Python - Random 숫자(난수) 생성 방법

파이썬에서 난수(무작위 숫자), Random 숫자를 생성하는 방법을 소개합니다.

1. random()으로 난수 생성

random()은 0.0이상, 1.0 미만의 숫자를 랜덤으로 생성합니다.

from random import random

# Random float:  0.0 <= x < 1.0
number = random()
print(number)

Output:

0.2833295327527984

2. uniform(a, b)으로 난수 생성

uniform(a, b)는 a와 b 사이의 실수를 랜덤으로 생성합니다.

from random import uniform

# Random float:  2.5 <= x <= 10.0
number = uniform(2.5, 10.0)
print(number)

Output:

6.2860296288879205

3. randrange(a)으로 난수 생성

randrange(a)는 0부터 a까지(a를 포함하지 않는)의 정수를 랜덤으로 생성합니다.

from random import randrange

# Integer from 0 to 9 inclusive
number = randrange(10)
print(number)

Output:

4

4. randrange(start, stop, step)으로 난수 생성

randrange(start, stop, step)는 start를 포함하고, stop을 포함하지 않는 숫자의 범위에서, step 간격에 해당하는 숫자를 무작위로 생성합니다.

randrange(0, 101, 2)는 0에서 101까지, 2의 간격에 해당하는 숫자이기 때문에 짝수만 생성됩니다.

from random import randrange

# Even integer from 0 to 100 inclusive
number = randrange(0, 101, 2)
print(number)

Output:

76

5. seed와 random()으로 난수 생성

seed는 랜덤 숫자를 생성하기 위한 key라고 생각할 수 있습니다. seed를 설정하지 않거나, seed의 인자로 매번 동일한 숫자를 사용하면, 생성되는 랜덤 숫자의 패턴이 항상 동일하게 됩니다.

seed는 seed(a)처럼 설정합니다.

from random import seed
from random import random

seed(1)

for _ in range(10):
    value = random()
    print(value)

Output:

0.13436424411240122
0.8474337369372327
0.763774618976614
0.2550690257394217
0.49543508709194095
0.4494910647887381
0.651592972722763
0.7887233511355132
0.0938595867742349
0.02834747652200631

6. randint(a, b)으로 난수 생성

randint(a, b)는 a부터 b까지의 정수를 랜덤으로 생성합니다.

from random import seed
from random import randint

seed(1)
for _ in range(10):
    value = randint(0, 10)
    print(value)

Output:

2
9
1
4
1
7
7
7
10
6

References

Loading script...

Related Posts

codechachaCopyright ©2019 codechacha