본문 바로가기
프로그램

[파이썬] 문제 : 사진 보고 과일명 맞추기

by 오디세이99 2023. 11. 7.
728x90
반응형
import turtle
import random
import time

turtle.setup (width=600, height=600)      # 화면 크기
turtle.hideturtle()                       # 터틀 숨기기

path = "E:/RnD/지식IN/과일/"              # 이미지가 있는 폴더

# 이미지 데이터 구조 ['이미지이름1','이미지이름2','파일명']
image_lst = [['참외','참외','2023-11-07 15 05 28 (5).gif']
            ,['딸기','딸기','2023-11-07 15 05 28 (6).gif']
            ,['바나나','바나나1','2023-11-07 15 05 28 (4).gif']
            ,['앵두','앵두1','2023-11-07 15 05 28 (8).gif']
            ,['앵두','앵두2','2023-11-07 15 05 28.gif']
            ,['수박','수박','2023-11-07 15 05 28 (2).gif']
            ,['레몬','레목','2023-11-07 15 05 28 (3).gif']
            ,['바나나','바나나2','2023-11-07 15 05 28 (7).gif']
            ]

s = turtle.Screen()
while True:
    turtle.clear()                               # 화면 클리어
    turtle.penup()                               # 이동을 위한 펜들기
    turtle.home()                                # 좌표의 중앙 이동
    turtle.pendown()                             # 이동을 위한 페다운
    idx = random.randint(0, len(image_lst)-1)    # 이미지 리스트 데이터 중 임의의 순서 지정하기
    name1 = image_lst[idx][0]                    # 이름1
    name2 = image_lst[idx][1]                    # 이름2
    
    image = path + image_lst[idx][2]             #이미지 불러오기
    s.addshape(image)                            #이미지 추가하기
    turtle.shape(image)                          #커서 모양을 이미지 모양으로
    turtle.stamp()                               #스탬프 찍기 

    turtle.penup()                               # 이동을 위한 펜들기
    turtle.goto(-100,-200)                       # 이동
    turtle.pendown()                             # 쓰기를 위한 펜다운
    in_name = turtle.textinput('과일명 입력:','과일명 맞추기')   # 입력 받기

    if in_name == '':                            # 입력이 공백이면 종료
        break
        
    if name1 == in_name or name2 == in_name:     # 입력 받은 이름이 이름1과 또는 이름2와 같으면 
        turtle.write(f"{name1}({name2}) 맞습니다.", move=False, align='left', font=('Arial', 16, 'normal'))
    else:
        turtle.write(f"틀렸습니다. {name1}({name2}) 입니다.", move=False, align='left', font=('Arial', 16, 'normal'))

    time.sleep(2)


turtle.done()

728x90
반응형

댓글