본문 바로가기
코딩/파이썬 활용 프로젝트

파이썬 GUI_8-2 : 미니 프로젝트_ 숫자 맞히기 게임 코드 설명

by jkyoon 2023. 1. 16.

guess_number.py
0.00MB

*본 코드는 pc(윈도)에서도 작동합니다.

* 전체 코드는 첨부파일을 활용하세요.

[코드 설명]

앞서 작성한 숫자 맞히기 게임 코드에 대한 설명입니다.

이전 글로 이동 ▶ [코딩/파이썬 활용 프로젝트] - 파이썬 GUI_8-1 : 미니 프로젝트_ 숫자 맞히기 게임 만들기

1 행 : gui 프로그래밍을 위해 tkinter 라이브러리를 불러옴.

2행 : 무작위 숫자를 생성하기 위해 random 라이브러리를 불러옴.

 

4행 :  randint() 함수를 이용해 컴퓨터가 생성한 무작위 숫자(1~50 사이)를 c_number 변수에 기억시킴

5행 : 게임 사용자가 숫자 맞히기를 시도한 횟수를 저장할 변수로 count를 지정하고 0으로 초기화시킴

 

7~9행: '숮자 맞히기' 창(window)을 생성하기 위한 코드 

 

11~12행: 안내 문장(1~50 사이의 숫자를 입력하세요.)을 표시하기 위한 레이블 생성 및 표시

13~14행: 사용자가 추측한 숫자를 입력하기 위한 안내 엔트리 생성 및 표시

 

17~29행 : 이 프로그램의 핵심 코드. 사용자가 추측한 숫자가 컴퓨터가 생성한 숫자와 맞는지 확인함.

 

17행: 함수 정의. 함수이름은 guess라고 정함.

18행: 사용자가 엔트리에 입력한 값을 가져다(get) 숫자 변환(int)함. 이후, g_number 변수에 저장함. 

19행: count는 함수 밖(5행)에서 선언한 변수임. 이를 함수 안에서 사용하려면 전역(global) 변수로 지정해야 함.

20행: 사용자가 입력(18행)했으므로 시도 횟수 count를 1 증가시킴.

 

21~28행: 중첩 조건문으로 안쪽 조건문(22~25)은 일단 보지 말고 바깥쪽 조건문(21행과 27행)을 보자.

21, 27행: 컴퓨터가 낸 무작위 숫자(c_number)와 사용자가 추측한 숫자(g_number)가 같지 않다면(!=)

                안쪽 조건문(22~25행)이 실행됨.

                만약 21행 조건이 거짓이라면, 즉 사용자가 정답을 맞혔다면, 27행으로 넘어가서 '정답입니다'가

                출력되고 프로그램은 종료된다.

 

22~25행: 사용자가 입력한 값이 정답이 아닌 경우는 다음과 같이 둘 중 하나다.

                 사용자 입력 값이 > 정답보다 큰 경우(22행) 

                 아니면 사용자 입력 값이 < 정답보다 작은 경우(24행) 

                 23행과 25행은 각각 경우에 따라 안내 문장을 레이블에 표시하는 코드다.

 

30~31행: geuss(함수) 시행을 위한 버튼 생성 및 표시

댓글