Projects_from_the_book/main.py

74 lines
2.9 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import random
max_nam = 10
guess_num = 3
def create_secret_num():
"""Создание случайного числа"""
digits = list('0123456789')
random.shuffle(digits)
secret_num = ''
for i in digits[0:3]:
secret_num += i
print(secret_num)
return secret_num
def attempt_check():
clue = []
for i in range(len(attemt)):
if secret_num[i] == attemt[i]:
clue.append("Fermi")
if attemt[i] in secret_num:
clue.append("Pico")
return ''.join(clue)
while True:
"""Основной цикл для прекращения или повторения игры"""
secret_num = create_secret_num() # Создание случайного числа
print("I meade a number.") # По сути, не нужное оповещение о создание числа(Создано для игрока)
attemt_num = 1 # Номер попытки игрока
while max_nam >= attemt_num:
"""Цикл, за счет которого осуществляются попытки"""
attemt = '' # Попытка игрока
while len(attemt) != guess_num or not attemt.isdecimal():
"""Цикл для ввода попытки. Его можно было бы реализовать через if-elif,
но тогда у игрока была бы одна попытка."""
print(f"Attemt № {attemt_num}") # Вывод информации о том, сколько попыток сделал игрок
attemt = input("> ")
"""Часть игры, где происходит проверка введенного игроком числа с загаданным(секретным) числом"""
if secret_num == attemt:
"""Проверка, полностью ли совпало число.
Её нельзя впихнуть в функцию attempt_check(), так как здесь есть ""break"""
print("You win!")
break
clue = attempt_check() # А вот и подсказка
if len(clue) == 0:
print("Bagle")
else:
print(clue)
attemt_num += 1
if max_nam < attemt_num:
# Финишная прямая. Говорим комплементы, называем секретное число и спрашиваем, хочет ли игрок продолжить
print("You're done trying") # У тебя закончились попытки
print(f"The hiden numbers is {secret_num}.You want repeat the game? 'yes' or 'no'")
answer = input("> ")
if answer == 'no':
print("Thanks for playing")
break
else:
print("You want repeat the game? 'yes' or 'no'")
answer = input("> ")
if answer == 'no':
print("Thanks for playing")
break