inflearn logo
강의

講義

知識共有

[新規改訂版] コーディング入門者のためのPython完璧ガイド

로또 예상번호 만들기 질문

269

k519s5941

投稿した質問数 5

0

질문에 대한 답변은

업무가 바쁘지 않으면, 보통 2~3일 내에 드립니다.

 

다만 이해하기 어려운 질문은 답변 드리기 어려우니,

코드와 오류 메시지를 같이 첨부해 주시기 바랍니다.

 

  1. 해설하시면서 우선 이해를 못한 부분이 lotto_num에 대해서 따로 값을 넣으라 이런 이야기도 없으시고 주신 명령어는 lottonumber의 리스트는 비어있다. 이 내용인데 어떻게 해서 random_number의 값이 lotto_num 리스트에 들어갔는지 궁금하고

 2. 처음에 for문을 이용하셨을 때 range함수를 이용하면 0~5번하는건데 이야기하셨을 때 몇번반복될지 모른다고 하셨는데 왜그렇게 이야기하셨는지 이해를 잘 못했습니다. range함수는 지정값 -1까지 반복하는게 아닌가요??

import random

lotto_num = [] #빈로또번호 리스트 생성
def getrandomnumber():
    number = random.randint(1,45)
    return number

for i in range(6):
random_number = getRandomNumber()
print(random_number)

 

  1. 설명 처음에 하실때 return부분 설명을 자세히 안하셨더라고요. 그래서 return 이부분을 이해를 못하는데 저값의 의미하는게 뭔가요??

import random

lotto_num = [] #빈로또번호 리스트 생성
def getrandomnumber():
    number = random.randint(1,45)
    return number

count = 0 
while True :
    if count > 5:
        break
    radom_number = getrandomnumber()
    if radom_number not in lotto_num:
        lotto_num.append(radom_number)
        count = count + 1

print(lotto_num)

python

回答 1

0

communityai8509

안녕하세요 안정선님, 인프런 AI 인턴이에요.

  1. 코드에서 random_number 값을 lotto_num 리스트에 넣는 부분은 다음과 같은 과정으로 이루어집니다.

    • getrandomnumber 함수를 호출하여 랜덤한 숫자를 얻습니다.
    • 얻은 랜덤한 숫자를 random_number 변수에 저장합니다.
    • random_number 값을 lotto_num 리스트에 추가합니다.
      따라서 코드에서 random_number 값이 lotto_num 리스트에 들어가는 것입니다.
  2. 첫 번째 코드에서 range 함수는 0부터 지정한 숫자-1까지의 범위를 반복합니다. 따라서 range(6)은 0부터 5까지의 범위를 반복하게 됩니다. 이렇게 범위를 반복하는 이유는 for문을 6번 반복하면서 랜덤한 숫자를 생성하여 출력하기 위함입니다.

첫 번째 코드의 수정이 필요한 부분:

import random

lotto_num = [] # 빈로또번호 리스트 생성
def getrandomnumber():
    number = random.randint(1,45)
    return number

for i in range(6):
    random_number = getrandomnumber()
    lotto_num.append(random_number)

print(lotto_num)

두 번째 코드는 getrandomnumber 함수를 사용하여 1부터 45까지의 랜덤한 숫자를 얻어,
중복되지 않는 로또 번호를 만들기 위해 while문을 사용하고, lotto_num 리스트에 추가하면서 총 6개의 로또 번호를 생성합니다.

두 번째 코드에는 큰 문제가 없어 보입니다. 다만 radom_number 변수 오타가 있어서 radom_number 대신 random_number로 수정해야 합니다.

수정된 코드:

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)

이상입니다. 추가적인 질문이 있으시면 언제든지 물어보세요. 감사합니다!

5번 강의 실습문제에서 질문있습니다.

0

65

1

type 오류

0

101

2

엑셀 자동화 에러

0

177

2

Visual Studio Code 통합?

0

125

1

새로운 엑셀 시트 왜 안열릴까요?

0

223

2

sum함수 관련 질문

0

149

1

xlwings 모듈 설치시 에러

0

287

2

엑셀자동화

0

101

1

마우스 자동화 라이브러리 설치 오류

0

164

2

나머지 문법

0

159

2

실습문제 9 쿼리

0

170

2

실습문제 14 관련 문의

0

140

2

라이브러리 관련

0

152

2

궁금한게 있습니다.

0

304

1

Syntax Error

0

827

2

'와"의 차이

0

312

1

9강 반복문 관련하여, name에 if함수 결합시 아래 에러 문구가 계속 뜨는데 에러 수정이 안되는데 방법이 있을까요?

0

370

2

수업 자료

0

279

2

Break 에러

0

273

1

While문 True의미

0

260

1

로또 번호 만들기 질문입니다!

1

244

1

input과 결합한 반복문 질문

1

196

1

조건문예제 2번 문제 터미널 값이 안나옵니다.

1

212

1

4강 연산과 연산자 질문입니다!

0

212

1