Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с дз по пайтону, пожалуйста.

bibibi Ученик (105), открыт 2 дня назад
Задание: Домашнее задание №3 Курс: Python Middle Тема: Продвинутое использование функций. Создаем игру «Домовой» Малая Компьютерная Академия Python Middle Задание №1 (10 баллов): Модифицировать код, написанный на занятии таким образом, чтобы у игрока была возможность сгенерировать не один день, а неделю. Задание №2 (12 баллов): Модифицировать просмотр задач на неделю таким образом, чтобы при выводе на экран каждый из дней подписывался соответствующим днем недели. Пример: Понедельник: Номер квартиры: задача Вторник: Номер квартиры: задача Среда: Номер квартиры: задача Инструкция по отправке задания: В качестве ответа на домашнее задание отправить файлы проекта, файлы проекта − файлы с расширением .py (рис. 1)
код:
import random
import time

TASK_PULL = [
"Прибрать квартиру",
"Проверить трубы",
"Напугать жильцов",
"Покормить собаку"
]
PLACES_PULL = [101,102,103,104,105]
day = []

def generate_day():
day = []
place_pull = [PLACES_PULL[random.randint(0, len(PLACES_PULL) - 1)] for i in range(random.randint(3, 7))]
for place in place_pull:
day.append({place: TASK_PULL[random.randint(0, len(TASK_PULL) - 1)]})
return day

def timer(func):
def wrapper(*args, **kwargs):
start_time = time.time()
result = func(*args, **kwargs)
end_time = time.time()
print(f"Время выполнения: {end_time - start_time} сек.")
return result
return wrapper

def print_day(day):
for task_and_place in day:
for place, task in task_and_place.items():
print(f"Задача: {task}, квартира: {place}")
def start_day():
global day
if len(day) != 0:
print("День уже начат")
return
day = generate_day()

def complete_task(place, task):
global day
if {int(place):task} in day:
day.remove({int(place): task})
print("Задача выполнена!")
else:
print("Ошибка в написании задачи или квартиры")
print(f"Задач осталось {len(day)}")
@timer
def complete_day():
global day
if len(day) == 0:
print("День не начат")
return
while len(day) != 0:
print_day(day)
place, task = input("Введите через запятую квартиру и задачу: ").split(",")
complete_task(place, task.strip())
print("День завершен")

methods = {
"Начать день": start_day,
"Выполнить день": compete_day,
"Выход": lambda:exit(0)
}

while True:
for methods_name in methods.keys():
print(methods_name)
chose = input("Выберите действие: ")
if chose not in methods.keys():
continue
methods[chose]()
1 ответ
Timur Magerramov Профи (675) 2 дня назад
Помочь то с чем?
bibibiУченик (105) 1 день назад
Уже не надо, сегодня разобрался
Похожие вопросы