본문 바로가기
Language/Python

[Python] 랜덤 모듈 / 예제로 공부하는 Python 100 문제풀이

by 애기 개발자 2022. 5. 17.
반응형

간단하게 랜덤 모듈에 있는 기능들을 살펴보자

 

1. 모듈 import

기능을 사용하려면 해당 기능을 import 해줘야 한다.

 

import random

이렇게 하면 끝이다.

 

2. random.randint( '이상', '미만' )

n = random.randint(1, 100)
# 1이상 100미만 사이 랜덤 정수

print(n)

randint()는 지정한 수 사이에서 랜덤 정수를 하나 골라준다.

 

3. random.sample( '범위', '개수' )

lst = random.sample(range(1, 10), 5)
#1이상 10 미만 사이 랜덤 정수 5개의 리스트 생성

print(lst)

range()를 이용해 범위를 지정해주고 뒤에 개수를 설정해주면

 

해당 범위 안에서 지정된 개수만큼 중복없이 리스트로 만들어 준다.

 

#로또 생성기
lst2 = random.sample(range(1, 46), 6)
print(lst2)

위의 코드를 사용하면 로또번호 6개가 나온다.

 

#ERROR
#err = random.sample(range(1, 10), 10)

위의 방식을 사용하면

 

1이상 10 미만의 중복이 없는 수를 뽑아내는데 10개면 중복이 필요해져서 에러가 발생한다.

*1~10은 총 9개

 

4. random.choice( '리스트 or 튜플 or range() or 문자열' )

함수 이름 그대로 하나를 골라주는 것이다.

 

고를려면 선택지가 필요하기 때문에 다중 선택지를 가질 수 있는 리스트, 튜플, range(), 문자열이 함수 안에  파라미터로 사용된다.

 

#random.choice()
#리스트, 튜플, range, 문자열 에서 하나의 요소를 랜덤으로 뽑음
a = random.choice('koreaKOREA')
print(a)

b = random.choice('korea KOREA')
print(b)

c = random.choice(['k', 'o', 'r', 'e', 'a', '', 'K', 'O', 'R', 'E', 'A'])
print(c)

위의 세가지 방법은 모두 정상 작동하지만

*공백도 하나의 문자열 취급

#d = random.choice( [] ) < error

이처럼 빈 값을 넣어주게되면 에러가 발생하게된다.

 

25 정수, 모듈, 랜덤, 난수.py

 

반응형

댓글