diff --git a/dk91_yurchenko/mkr2/READMY.rst b/dk91_yurchenko/mkr2/READMY.rst new file mode 100644 index 0000000..1948fc5 --- /dev/null +++ b/dk91_yurchenko/mkr2/READMY.rst @@ -0,0 +1,17 @@ +1. Написать скрипт, реализующий игру "угадай мелодию". + + Суть игры в следующем. Есть директория ``musdir`` с MP3-файлами песен. + Из директории случайным образом выбирается песня. Из нее случайным образом + выбирается фрагмент длительностью ``len`` секунд и воспроизводится пользователю. + + Пользователю предлагается угадать, что это за песня. В случае верного ответа, + игрок набирает очки. В случае неверного – игрок проигрывает, ему предлагается сыграть снова. + + Вести учет максимальных очков (highscore). + + Для работы с файлами использовать стандартную библиотеку ``pathlib``. + + Для работы с аудио можно использовать любую из стандартных (лучше – сторонних) + библиотек. Решение должно быть мультиплатформенным (Windows, GNU/Linux). + + Значения параметров принимать в виде аргументов командной строки. \ No newline at end of file diff --git a/dk91_yurchenko/mkr2/mkr2.py b/dk91_yurchenko/mkr2/mkr2.py new file mode 100644 index 0000000..4524359 --- /dev/null +++ b/dk91_yurchenko/mkr2/mkr2.py @@ -0,0 +1,38 @@ +#! /usr/bin/env python3 + +from pathlib import Path +from random import randint +from pydub import AudioSegment +from pydub.playback import play +import argparse + +def game(highscore): + + r = randint(1, 5) + i = 0 + + pathlist = Path.home().glob('**/musdir/*.mp3') + for path in pathlist: + i = i + 1 + path_in_str = str(path) + print(path_in_str) + if(i == r): + path_in_str = str(path) + sound = AudioSegment.from_mp3(path_in_str) + play(sound) + + print('What played out of this?') + + parser = argparse.ArgumentParser() + """Positional arguments""" + parser.add_argument('l', type=int, help='Track number: ') + args = parser.parse_args() + + if(args.l == r): + print('GOOD!') + highscore = highscore + 1 + game(highscore) + else: + print('Highscore: ', highscore) + +game(0) diff --git a/students.rst b/students.rst index b964449..a7496a1 100644 --- a/students.rst +++ b/students.rst @@ -7,6 +7,7 @@ Alina Tymchenko `dk91_atymchenko `_ Andriy Khyznyak `dk92_khyznyak `_ Anton Romanenko `dk92_romanenko `_ Artem Herashchenko `dk91_herashchenko `_ +Sergiy Yurchenko `dk91_yurchenko `_ Dima lazarchuk `dk92_lazarchuk `_ Nikita Maniukhin `dk92_maniukhin `_ Sergiy Yurchenko `dk91_yurchenko `_