로또번호를 만드는 3가지 방식

늪지대·2022년 9월 17일
0
post-thumbnail

파이썬 강의를 여러 개 듣다보니 가르치는 사람은 달라도 강의패턴은 크게 다르지 않다.
로또번호 추출기를 만드는 것 또한 단골소재이다. 이 강의는 심지어 멘트도 비슷하다.
"여러분이 만든 번호가 당첨될지도 몰라요" 대충 이런식이다.

멘트는 비슷하지만 코드 길이는 차이가 났다. 사람마다 생각하는 로직이 다르기에 당연한 결과겠지만, 같은 결과가 나오는데 생각하는 방식이나 사용하는 함수가 다른 것이 초심자인 나에게는 신기했다.

#코드 1번
import random
lotto_num = []
def getRandomNumber():
number = random.randint(1,45)
return number
count = 0
while True:
if count > 5:
break
random_number = getRandomNumber()
if random_number not in lotto_num:
lotto_num.append(random_number) 
count = count + 1
print(lotto_num)
#코드 2번
import random
count = int(input('로또번호를 몇 개 생성할까요?->'))
for j in range(count):
    lotto = []
    rand_num = random.randint(1,46)
    for i in range(6):
        while rand_num in lotto:
            rand_num = random.randint(1,46)
        lotto.append(rand_num)
    lotto.sort()
    print('{}. 로또번호: {}'.format(j, lotto))
    
    
#코드 3번
import random
print(random.sample(range(1, 46),6))

코드를 최대한으로 줄였을 때, 2줄로 로또번호를 구할 수 있다.
파이썬을 접하게 된지 얼마지나지 않았지만, 내 고집을 버리고 효율적인 프로세스를 바로 바로 받아들여야 일처리를 신속하게 해낼수 있겠다는 생각이 들었다.

profile
비전공자 코린이

0개의 댓글