Привет всем! Очень рад, что создал свою первую игру! Это простая игра по угадыванию собак, но я узнал много важного о логике 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.")