Today's

길을 나서지 않으면 그 길에서 만날 수 있는 사람을 만날 수 없다

파이썬 스크립트

파이썬 으로 로또 번호나 만들어 볼까 ? randint 와 random 의 차이는 뭘까 ?

Billcorea 2022. 2. 10. 23:16
반응형

심심풀이 땅콩 입니다. 오늘은 파이썬 스크립트의 random 함수를 이용해서 숫자 만들어 내는 것을 구현해 예정이다.

 

random 은 알겠는데, randint 는 뭔가 ?  파이썬에서 지원되고 있는 random 의 숫자 범위내 만들어 내는 함수

 

randint 예제

이 게시자님의 내용을 보면 쉽게 이해를 할 수 있을 듯...

 

https://blockdmask.tistory.com/383

 

[python] 파이썬 랜덤함수(random)에 대해서

안녕하세요. BlockDMask 입니다. 프로그램을 만들다 보면 보면 랜덤 숫자를 생성해야 할 경우가 많은데요. 오늘은 파이썬에서 랜덤한 수를 구할 수 있는 랜덤함수에 대해서 알아보려고 합니다. 지

blockdmask.tistory.com

 

뭐 아무튼 난 이 함수를 이용해서 숫자를 만들어 낸다.

 

다만, 번호는 1 ~ 45 사이에서 나와야 하고, 한번 나온 숫자는 같은 회차에서는 나오지 말아야 한다.

그래서 구해진 값이 list 에 들어 있는 지 확인하고, 없을 때만 넣기로 했다. 

 

java 에서 한다면 쉬웠을 건데, python 에서는 그냥 무식 하게 list 의 index 을 이용했다.  오류가 난다면 없다는 것이니 추가 하고, 있다면 다시 구해야 한다.  그것도 숫자가 6개가 나오게 하려면 list 의 길이을 구해서 6이 되면 되는 것이다.

그래서 6번 구하는 것으로 했는데, 실제 6개가 오지 않을 수 도 있기 때문에 구해질 때 까지 반복 하도록 하였다.

 

짜짠~ 그래서 구해진 것을 확인하고, 그걸 난 한번에 5개씩 구매할 생각이니, 5개가 되도록 반복했다.

import random


def getNum():
    number = []
    for i in range(0, 6):
        iNo = random.randint(1, 45)
        try:
            number.index(iNo)
        except:
            number.append(iNo)
    return number
androidMsg = ""
for i in range(0, 5):
    while True:
        numX = getNum()
        numX.sort()
        if len(numX) == 6:
            break

    # print(numX)
    androidMsg += str(numX) + "\n"

print(androidMsg)

그리고선 마지막에 구한 것들을 출력해 보았다. ㅋㅋㅋ

 

이제 할 일은 로또 사로 가야겠다.

 

반응형