Я создал свою первую игру на Python — Угадай собаку

Привет всем! Очень рад, что создал свою первую игру! Это простая игра по угадыванию собак, но я узнал много важного о логике Python, создавая ее.

Помимо всего цикла для создания системы поворотов и точек, при каждом повороте игра делает запрос к этому крутому API Dog, чтобы получить новую фотографию. Поскольку название породы находится в URL изображения, мне нужно было понять, как разобрать URL, изменить порядок строк и заменить символы.

О, я также вставил 2 маленьких чит-кода, которые сразу дадут вам очко. Есть один на английском и один на португальском для других бразильцев, хе-хе 🙂

Может быть, это и не большое достижение для всех, но я доволен!

Нажмите здесь, чтобы поиграть

Важная оговорка: я стажируюсь в Abstra Cloud. Я использовал его для создания пользовательского интерфейса и хостинга для меня, потому что сейчас я больше сосредоточен на изучении логики. Я делаю большинство своих проектов там, но хотел поделиться, потому что было бы здорово, если бы кто-то сделал это в другом месте. Надеюсь, это нормально!

Полный код (со скрытым читом!):

import requests
from urllib.parse import unquote, urlparse
from pathlib import PurePosixPath

points = 0
tries = 0

def request():
    x = requests.get('https://dog.ceo/api/breeds/image/random')
    response = x.json()
    url = response["message"]
    return url

def urlparser(url):
    name = PurePosixPath(
            unquote(
                urlparse(
                    url
                ).path
            )
        ).parts[2]
    name = name.replace('-', ' ')
    name = name.split()
    name = list(reversed(name))
    return " ".join(name)

while tries < 5:
    selected_url = request()
    selected_name = urlparser(selected_url)
    print(selected_name)

    guess = Page().display_image(selected_url)
                .read("What is this dog's breed?")
                .run()
    guess_answer = guess["What is this dog's breed?"].lower()
    cheat_options = [???]

    if guess_answer in selected_name or guess_answer in cheat_options:
        points += 1

    tries += 1

if points > 2:
    display(f"Congrats dawg! You scored {points} points 😎")
else:
    display(f"Woof... You only scored {points} points.")
Войти в полноэкранный режим Выход из полноэкранного режима

Оцените статью
devanswers.ru
Добавить комментарий