SARACEN's Blog
  • [파이썬:Python]타자게임
    2019년 06월 13일 01시 17분 44초에 업로드 된 글입니다.
    작성자: RACENI

    요즘 공부하는 파이썬 기본문법을 가지고 간단한 타자게임 하나 만들어봤습니다!

    변수가 많지는 않아서 직접해보면 금방 이해하실듯 합니다.

    간단한 랜덤함수(난수)와 배열과 반복문, 조건문으로 충분히 만들 수 있습니다.

    아래에 플레이 사진과 소스코드 올려놓겠습니다.

    import random
    import time
     
     
    animal_en = ['horse','monkey','lion','tiger','leopard','giraffe','hippopotamus','snake','bear','otter','cat','dog','pig','cow','bison','sloth','weasel']
    animal_kr = ['캥거루','토끼','강아지','고양이','코알라','고릴라','원숭이','고래','낙타','뱀','물개','쥐','소','말','돼지','거북이']
    animal_mix = ['horse','monkey','lion','tiger','leopard','giraffe','hippopotamus','snake','bear','otter','cat','dog','pig','cow','bison','sloth','weasel','캥거루','토끼','강아지','고양이','코알라','고릴라','원숭이','고래','낙타','뱀','물개','쥐','소','말','돼지','거북이']
    aq=0
     
        
    print("영어는 1번 한글은 2번 믹스는 3번 랭크전은 4번")
    s=int(input())
     
     
     
    if s == 1:
        print("몇 문제를 푸실 건가요?")
        b=int(input())
        print("\n엔터를 누르면 시작합니다. \n//선택하신 문제의 수:",b,"//")
        
        print("//선택하신 버전: 영어//")
        input()
     
        start = time.time()
        a=0
     
        while a<b:
        
            num = random.randint(0,16)
            print()
            print(animal_en[num])
     
            answer = input()
     
            if(answer==animal_en[num]):
                #print("정답입니다.")
                a+=1
                aq+=1
            else:
                print("한 번더 하세요.")
                answer = input()
            
                if(answer==animal_en[num]):
                    #print("정답입니다.")
                    a+=1
                    aq+=1
                else:
                    print("틀렸습니다")
                    a+=1
     
        recordtime = round(time.time() - start,2)
        print("\n소요된 시간:", recordtime)
        print("정답 갯수:", aq)
        print("오답 갯수:", b-aq)
        
     
    elif s == 2:
        print("몇 문제를 푸실 건가요?")
        b=int(input())
        print("\n엔터를 누르면 시작합니다. \n//선택하신 문제의 수:",b,"//")
     
        print("//선택하신 버전: 한글//")
        input()
        
        start = time.time()
        a=0
     
        while a<b:
        
            num = random.randint(0,15)
            print()
            print(animal_kr[num])
     
            answer = input()
     
            if(answer==animal_kr[num]):
                print("정답입니다.")
                a+=1
                aq+=1
            else:
                print("한 번더 하세요.")
                answer = input()
            
                if(answer==animal_kr[num]):
                    print("정답입니다.")
                    a+=1
                    aq+=1
                else:
                    print("틀렸습니다")
                    a+=1
     
        recordtime = round(time.time() - start,2)
        print("\n소요된 시간:", recordtime)
        print("정답 갯수:", aq)
        print("오답 갯수:", b-aq)
                    
    elif s == 3:
        print("몇 문제를 푸실 건가요?")
        b=int(input())
        print("\n엔터를 누르면 시작합니다. \n//선택하신 문제의 수:",b,"//")
     
        print("//선택하신 버전: 믹스//")
        input()
        
        start = time.time()
        a=0
     
        while a<b:
        
            num = random.randint(0,32)
            print()
            print(animal_mix[num])
     
            answer = input()
     
            if(answer==animal_mix[num]):
                print("정답입니다.")
                a+=1
                aq+=1
            else:
                print("한 번더 하세요.")
                answer = input()
            
                if(answer==animal_mix[num]):
                    print("정답입니다.")
                    a+=1
                    aq+=1
                else:
                    print("틀렸습니다")
                    a+=1
        recordtime = round(time.time() - start,2)
        print("\n소요된 시간:", recordtime)
        print("정답 갯수:", aq)
        print("오답 갯수:", b-aq)
     
     
    elif s == 4:
        print("//선택하신 버전: 랭크전//")
        print("//랭크전은 10문제이고 믹스버전입니다..//")
        input()
        
        start = time.time()
        a=0
     
        while a<10:
        
            num = random.randint(0,32)
            print()
            print(animal_mix[num])
     
            answer = input()
     
            if(answer==animal_mix[num]):
                print("정답입니다.")
                a+=1
                aq+=1
            else:
                print("한 번더 하세요.")
                answer = input()
            
                if(answer==animal_mix[num]):
                    print("정답입니다.")
                    a+=1
                    aq+=1
                else:
                    print("틀렸습니다")
                    a+=1
     
        recordtime = round(time.time() - start,2)
        print("\n소요된 시간:", recordtime)
        print("정답 갯수:", aq)
        print("오답 갯수:", 10-aq)
     
        f = open("C:/Users/user/Downloads/rank.txt", 'r')
        lines = f.readlines()
        for line in lines:
            if recordtime<float(line):
                print("신기록 갱신을 축하합니다!")
        f.close()
    
     
        f = open("C:/Users/user/Downloads/rank.txt",'a')
        nextw="\n"
        f.write(nextw)
        f.write(str(recordtime))
        f.close()

     

    댓글