100일 간의 코드: 2022년을 위한 완전한 Python Pro 부트캠프 - 14일차(고급 게임)

10186 단어
  • 14일차의 주요 목표는 주어진 프로젝트(HigherLower Game)를 살펴보고 리버스 엔지니어링한 다음 개별 작업을 생성하여 인스타그램 팔로워 데이터(사전 형식)를 사용하여 유사한 게임을 생성하는 방법을 배우는 것이었습니다. 다른 프로젝트와 마찬가지로 'The objective'도 더 작은 작업으로 나뉩니다.

  • 개별 작업은 다음과 같으나 이에 국한되지는 않습니다.
  • 게임 데이터에서 임의의 계정을 생성합니다.
  • 계정 데이터를 인쇄 가능한 형식으로 지정합니다.
  • 사용자에게 추측을 요청합니다.
  • 사용자가 올바른지 확인하십시오.
  • 팔로어 수를 가져옵니다.
  • If 문
  • 피드백.
  • 점수 유지.
  • 게임을 반복 가능하게 만듭니다.
  • B를 다음 A로 만듭니다.
  • 아트를 추가합니다.
  • 라운드 사이에 화면을 지웁니다.

  • 좀 더 예뻐보이도록 조금 더 추가했어요 ㅋㅋㅋㅋㅋ

    1일 시작부터 모든 코딩은 https://replit.com의 리플릿으로 이루어졌습니다. 15일차부터는 코딩 환경에 Pycharm을 사용하기 시작합니다.

    상위 하위 게임 프로젝트




    - import emojis from https://unicode.org/emoji/charts/emoji-list.html
    import random
    from replit import clear
    from art import logo, hl, vs
    import emoji
    print(logo)
    
    - Welcome data, what is your name? greet the player use an emoji
    
    print("Welcome to the HigherLower Game. This game is based off the original which is hosted at http://www.higherlowergame.com/. ")
    
    user_name = input("What is your name? ")
    computer_response = print(emoji.emojize(f"Welcome {user_name.capitalize()}, 'Lets Play' :grinning_face: "))
    
    def get_random_account():
      """Get random account details from game_data dictionary"""
      from game_data import data
      return random.choice(data)
    
    def format_data(account):
      """Format account into printable format: name, description and country"""
      name = account["name"]
      description = account["description"]
      country = account["country"]
      #print(f'{name}: {account["follower_count"]}')
      return f"{name}, a {description}, from {country}"
    
    def check_answer(guess, a_followers, b_followers):
      """Checks followers against user's guess 
      and returns True if they got it right.
      Or False if they got it wrong.""" 
      if a_followers > b_followers:
        return guess == "a"
      else:
        return guess == "b"
    
    def game():
      print(hl)
      score = 0
      game_should_continue = True
      account_a = get_random_account()
      account_b = get_random_account()
    
      while game_should_continue:
        #account_a = account_b
        account_a = get_random_account()
        account_b = get_random_account()
    
        while account_a == account_b:
          account_b = get_random_account()
    
        print(f"Compare A: {format_data(account_a)}.")
        print(vs)
        print(f"Against B: {format_data(account_b)}.")
    
        guess = input("Who has more followers? Type 'A' or 'B': ").lower()
        a_follower_count = account_a["follower_count"]
        b_follower_count = account_b["follower_count"]
        is_correct = check_answer(guess, a_follower_count, b_follower_count)
    
        clear()
        print(hl)
        if is_correct:
          score += 1
          print(f"You're right! Current score: {score}.")
        else:
          game_should_continue = False
          print(f"Sorry, that's wrong. Final score: {score}")
    
    game()
    

    좋은 웹페이지 즐겨찾기