안녕하세요 오늘은 랜덤 로또번호 생성하기 두번째 시간이에요 지난 시간에 공부했던 내용이랑 함께 이제 진짜 번호 생성기를 만들어봐요😅
처음부터 이 글을 보시기 전에 아래의 Chapter 1 부터 확인해주세요!
2023.02.12 - [1. Python] - [Python study] Day09
로또번호를 선택하는데 조건은 어떤것들이 있을까요 ?
크게 3가지 조건이 있는데요 조건은 아래와 같습니다.
첫번째로, 1~45 사이의 숫자 선택
두번째로, 중복 없이 숫자 선택
세번째로, 6개의 숫자 만 선택
그럼 위에 조건 순서대로 차근차근히 코드를 작성해보아요!
1. 1~45 사이의 숫자 선택
지난 시간에 마지막에 다루었던 모듈 중에 random 모듈안에 있는 randint 함수를 이용합니다.
우선 랜덤모듈을 import 하고 randint 함수를 사용해주면 되겠죠!
randint(a,b) 는 a부터 b까지의 임의 숫자 선택이므로 1,45를 부여합니다.
첫번째 조건이 완성됐습니다!
아!!! 지난 공부시간에 더 알아봤어야하는 사전지식이 더있었네요,,😥
추가 지식에 대해 빠르게 알아보도록 해요 !
1) if A not in B :
"B 안에 A가 없으면 아래코드를 실행"
2) list.append('A') "list 안에 'A' 를 추가해라"예를들어
과 같은 리스트가 있다고했을때,
append 함수를 쓰면 다음과 같이 리스트 마지막에 항목이 추가되는것을 확인 할 수 있습니다.
3) len(list)
"list 내부의 원소 개수"
위에 새로만든 list 내부에 원소 개수를 출력해보겠습니다.
list 내부에 원소의 개수인 6이 출력되는 것을 확인 하실 수 있습니다.
2. 중복없이 숫자 선택
두번째 조건은 조건문을 사용해서 작성해야하는데요,,
우선
1)빈 list를 생성합니다.이후에
2) list에 숫자를 하나하나 반복해서 추가해나가면서
3) list내에 있는 숫자와 대조 한 이후 중복이면 다시 뽑는 형태
로 구성 하면되겠습니다!
코드만 봐서는 무슨 소리인지 잘 이해가 안되니 예시를 들어서 차근차근 어떻게 돌아가는지 알아보겠습니다!
이러한 순서대로 list 내부에 중복되는 숫자가 없게 추가 되는 무한 루프가 생성이 됩니다.
3. 6개의 숫자만 선택
세번째 조건인 6개 숫자 만 선택하는 조건은 매우 간단합니다!
위코드에 len 함수를 써서 list 내부에 원소가 6개가 되면 while 무한 루프가 중단하는 코드만 하나 추가해주면 됩니다.😊
lotto_num이라는 리스트에 원소의 개수가 6이면( == ) while 루프를 break 하라는 식을 아래에 추가로 작성 해봤습니다.
마지막으로 console 창에서 확인하기위해 print 함수를 이용해서 lotto_num을 출력하는 코드를 작성합니다.
이제 모든 작업이 끝났습니다.😛
1, 2, 3 번 조건을 모두 부합하는 전체 코드를 모두 작성해 보면 다음과같습니다!
마지막으로 실행을 해보면!
1~45 사이의 숫자 중 중복없이 6개가 랜덤으로 선택 되는 것을 확인 하실 수 있습니다.
4. 마치며
오늘은 랜덤 로또번호 생성하기 Chapter2번째 시간을 가져봤는데요 여러분은 어떠셨나요
저는 이제까지 공부한 이론 및 여러가지 코드를 조합하고 구성해보니 그럴싸한 프로그래밍이 된 것같아 기쁘고
마치 레고블럭을 조립해서 작은 조립품을 만드는 것과 같은 느낌이 들었네요,,
여러분들도 재밌으셨길 바라며 다음 시간에는 더욱더 알찬 공부를 같이 해봐요😀
'1. Python' 카테고리의 다른 글
[Python study] PyKrx Random 주식 종목 선택 코딩 (0) | 2023.02.20 |
---|---|
[Python study] PyKrx 패키지 알아 보기 (0) | 2023.02.18 |
[Python study] Day09 (1) | 2023.02.12 |
[Python study] Day08 (0) | 2023.02.09 |
[Python study] Day07 (0) | 2023.02.06 |