Хочу поделиться своей реализацией игры Джона Конвея "Жизнь". Она доступна на моём канале GitHub в разделе PyGames.
О реализации
Игры была написана в качестве практики освоения ООП и стандартной библиотеки Tkinter.
Изначально я написал игру, где в качестве ячеек использовались кнопки-buttons. Однако, размер кнопок нельзя было уменьшить до нужного мне размера, когда я хотел большое поле. Тогда я воспользовался реализацией, предложенной на habrahabr, через прямоугольники. Там другой принцип реагирования - по позиционированию мыши.
В реализация доступно два режима игры: на ограниченном прямоугольнике и на торе. Можно выбрать одну из 5 скоростей появления поколений.
Начальное поле может быть задано как вручную с помощью мыши (левый клик - добавить жизнь в клетку, правый - убить клетку), так и выбрана предустановленная комбинация: с помощью кнопки RANDOM можно задать случайное поле, а с помощью кнопки FIGURE выбрать одну из известных фигур игры.
Файлы игры: main.py, mylife_oop3.py
Что получилось в итоге - представлено на сайте GitHub.
понедельник, 21 сентября 2015 г.
воскресенье, 20 сентября 2015 г.
Маленкий шажок для человека
Сегодня, 20 сентября 2015 года, тихо и незаметно была размещена реклама моего учебника на сайте "Лаборатория юного линуксоида". Спасибо основателю проекта Светлане Шапошниковой за помощь в распространении! =)
вторник, 1 сентября 2015 г.
Keep calm and code python
Введение
Когда мне задают вопрос "Чем python лучше Matlab(c), да и лучше ли?", то я, признаюсь, прихожу в некоторое замешательство.
У меня с Matlab(c) не сложилось, весь мой личный опыт работы с ним окрашен в тёмные тона. Он жутко долго устанавливается, он нелегальный, он подвисает и тормозит, куча окошек, постоянные вектора-столбцы. Вдобавок он не мог прочитать крупный файл в netcdf формате, и картографический пакет мне скачать с torrents также не удалось.
А с python у меня сложилось так, что я бросил программировать на фортране, удалил grads, легко перехожу с Linux на Windows, читаю, анализирую и визуализирую netcdf файлы в одной среде и чувствую себя великолепно!
Поэтому мне трудно дать объективный обзор, сравнить беспристрастно "слона" с "китом". Но я попытаюсь и предлагаю следующую схему: свойство и краткое его освещение в обеих системах. Поехали.
Когда мне задают вопрос "Чем python лучше Matlab(c), да и лучше ли?", то я, признаюсь, прихожу в некоторое замешательство.
У меня с Matlab(c) не сложилось, весь мой личный опыт работы с ним окрашен в тёмные тона. Он жутко долго устанавливается, он нелегальный, он подвисает и тормозит, куча окошек, постоянные вектора-столбцы. Вдобавок он не мог прочитать крупный файл в netcdf формате, и картографический пакет мне скачать с torrents также не удалось.
А с python у меня сложилось так, что я бросил программировать на фортране, удалил grads, легко перехожу с Linux на Windows, читаю, анализирую и визуализирую netcdf файлы в одной среде и чувствую себя великолепно!
Поэтому мне трудно дать объективный обзор, сравнить беспристрастно "слона" с "китом". Но я попытаюсь и предлагаю следующую схему: свойство и краткое его освещение в обеих системах. Поехали.
Подписаться на:
Сообщения (Atom)
Как перевести UV в направление и скорость ветра? How to convert wind UV-components to direction and velocity?
Всё просто. def uv2dir(u, v): ''' Источник: https://github.com/blaylockbk/Ute_WRF/blob/master/functions/wind_calc...
-
Цель: Есть файл в формате netCDF. Хочется получить карту какой-либо гидрометеорологической величины за какой-нибудь временной срез в Window...
-
Задача: Поставить компилятор fortran-а на компьютер/ноутбук с операционной системой Windows7 (на 64 разрядную) Методы решения: Geany, CVF...
-
Цель: Освоить новые возможности GrADS для анализа гидрометеорологической информации Средства: GrADS Рассмотрим GRIB-файл "model...