Основы языка Python. Урок 9. Разработка графического приложения. Часть 3

Автор Denis Lisitsin
Основы языка Python. Урок 9. Разработка графического приложения. Часть 3

друзья.

Приветствую вас. Наш курс Python быстрый. Старт продолжается в этот раз мы продолжим разработку игры.

Русская рулетка, а также вернемся к нашему системном буду помощнику и попробуем их объединить, но по традиции сначала разберём домашнее задание требовалось вынести функции процесса рисования барабана и его в выберем строки где у нас рисуется барабан переменные угла фи и радиуса мы поставим в самом начале программы и запишем их с большой буквы.

Чтобы показать, что — это не константные значения сделаем функцию отрисовки пистолетом не забудем изменить переменные которому переназвали вызовем эту функцию проверим, что она работает функция работает, но хорошо бы иметь возможность менять место на экране где будет отображаться барабан. Ну, что собственный было в домашнем задании для этого добавить в нашу функцию дополнительные аргументы назовём их Bass X и Y используем их в коде функции немножко прокомментируй. Наш кот чтобы было понятно, что мы делаем. Это мы рисуем основной. Круг Это мы рисуем мышку поэтому рисуем барабан не забудем отрисовку барабана также дополни базовыми координатами проверим, что — это работает зададим координаты ta-100 проверим замечательно теперь приведем похоже операцию с анимацией вращения барабана берём код отвечающий за вращении барабана копируем создаем функцию вращение вращение пистолетом где я сразу задом аргументы базовых координаты знаешь, что они мне пригодятся дополним координаты базовыми координатами, но здесь есть небольшая загвоздка в том, что вращение должно начинаться с. Никой стартовой позиции. Вадим функцию вращения барабана ещё и стартовую позицию используем. Теперь эту функцию в коде программы зададим такие же координаты как у отрисовки барабан передадим стартовую позицию, но здесь мы обнаружим что. Стартовая позиция должна меняться после вращения барабана мы об этом уже говорили поэтому давайте сделаем так чтобы функция вращения барабана возвращала значение где барабан остановился таким вот образом мы вернем конечное положение барабана. Ну, а при использовании функции сделаем вот. Какую вещь. Стартовая позиция будет передаваться функцию как она уже удавалось, но при этом она будет меняться. После выполнения функции нам становится не нужно потому, что она есть уже функция мы просто проверяем. Старт на то, что — это начальная позиция и если — это начальная позиция. То пользователь проиграл. Давайте посмотрим, что у нас получилось. Получилось ошибка потому, что я забыл изменить имя переменной не забываем добавить базовые координаты проверяем кажется всё как работала только теперь у нас. Появилась возможность менять координаты расположения барабана на экране. Ну, что ж домашнее задание выполнено. Давайте Вернемся сейчас к нашему роботу помощник у которого мы делали до 5 занятия. Давайте зададим нашему файл программы осмысленное название и немного оптимизируем код нашего робота, а именно создадим функцию которая будет выполняться только если запускается именно эта программа просто весь мой кот мы поместим функцию обычно такую функцию называют Main, но в принципе название ни на, что не влияет другой момент сделать проверку запускается ли текущая программа Easy какая-то другая для этого в бетоне есть специальная переменная на с двумя подчеркиваниями. В случае если запускается именно — это программа, тогда переменным будет иметь значение Main, тогда нам остаётся сделать проверку, что если name равно Main, тогда мы запускаем функцию Main то есть основной. Давайте проверим, что робот запускается робот запустился замечательно теперь возвращаемся. Русская рулетка даем также файлы осмысленные названия и подключаем к ней нашего робота делается — это уже знакомый нам команды импорт для которой мы указываем имя модуля имя модуля пишется без расширения. То есть просто. Мистер робот с таким образом наша программа робот стола для игры. Русская рулетка подключаемым модулем. Ну, а теперь немножко пофантазируй и придумаем. Какое наказание сможет выполнить наш робот если игрок проиграет в русской рулетке. Ну давайте например наш робот на пакостит и про дублирует все файлы. В текущей директории посмотрим на код нашего робота функции doubler тех файлов. В текущей директории. У нас не было. Это было написано просто кодом. Давайте добавим такую отдельную функцию и будем её использовать в русской рулетке создадим функцию Doblo Files. Пусть эта функция принимает имя директории в таком случае эта функция станет более универсальной чем если она будет работать только. В текущей директории список файлов получим из переданной директора проверим работу функции, но немного не так как раньше сначала пишем функцию в четвёртую ветку нашей программы то есть теперь вместо. Кода будем использовать функцию. А теперь воспользуемся отладчиком чтобы понять где возникла ошибка приходится узнавать текущее значение переменных и выяснять пока выполняется программа тут есть некоторые варианты использовать функцию. Принт для вывода промежуточных результатов. Но — это бывает не всегда эффективно и другой вариант воспользоваться встроенным отладчиком вот — это вот способ рассмотрим поподробнее в комплекте с питоном идёт отладчик gdb — это консольные отладчик. Но уверен консолью уже не напугать запуск отладчика происходит так сначала указываем имя интерпретатором потом указываем опцию минус M указываю module pcb. И дальше имя скрипта который мы хотим отладить запускаем и оказываемся внутри отладчика отладчика есть свои команды узнать список команд и узнать назначение команд можно воспользовавшись функцией Help чтобы отладить программу или функции.

0 комментариев
0

Читайте также