Сделал управление рукой в игре Subway Surfers.
При помощи Python и компьютерного зрения на OpenCV!
https://youtu.be/DLYO_4TtqMs
При помощи Python и компьютерного зрения на OpenCV!
https://youtu.be/DLYO_4TtqMs
YouTube
Subway Surfers но управляю СВОЕЙ РУКОЙ вместо клавиатуры :D
Сделал управление рукой в игре Subway Surfers.
При помощи Python и компьютерного зрения на OpenCV!
Кликайте по ссылке в описании https://cutt.ly/FHuiOrp и приобретайте билет на PHDays 2022 - по промокоду HOWDYHO со скидкой 23%. Поторопитесь, их количество…
При помощи Python и компьютерного зрения на OpenCV!
Кликайте по ссылке в описании https://cutt.ly/FHuiOrp и приобретайте билет на PHDays 2022 - по промокоду HOWDYHO со скидкой 23%. Поторопитесь, их количество…
👍32😁1
This media is not supported in your browser
VIEW IN TELEGRAM
крутящийся пончик который написан на Python!
похожий пончик был на C, но теперь появился и на Python!
всего 114 строк и у тебя будет такой же :3
он сделан благодаря математическим вычислениям с помощью библиотеки math, а поле было создано с помощью библиотеки pygame.
код можно посмотреть здесь
похожий пончик был на C, но теперь появился и на Python!
всего 114 строк и у тебя будет такой же :3
он сделан благодаря математическим вычислениям с помощью библиотеки math, а поле было создано с помощью библиотеки pygame.
код можно посмотреть здесь
👍69🤯18🔥12🎉1
Matplotlib — одна из основных библиотек для выстраивания графиков.
С помощью Matplotlib можно создавать любые визуализации, например: гистограммы, столбцовые диаграммы, точечные диаграммы и другое.
Так же данная библиотека облегчает использование меток, сеток, легенд и других объектов форматирования.
Matplotlib написан и поддерживался в основном Джоном Хантером и распространяется на условиях BSD-подобной лицензии.
Maptlotlib это поистине функциональная библиотека, речь идёт обо всём, что можно нарисовать 🔥
Ставится командой ⚙
Документация и примеры кода здесь.
С помощью Matplotlib можно создавать любые визуализации, например: гистограммы, столбцовые диаграммы, точечные диаграммы и другое.
Так же данная библиотека облегчает использование меток, сеток, легенд и других объектов форматирования.
Matplotlib написан и поддерживался в основном Джоном Хантером и распространяется на условиях BSD-подобной лицензии.
Maptlotlib это поистине функциональная библиотека, речь идёт обо всём, что можно нарисовать 🔥
Ставится командой ⚙
pip install matplotlib
Документация и примеры кода здесь.
👍35🔥3😱3❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Pyxel — это игровой движок для Python в стиле ретро.
Благодаря своей простоте, вдохновленной старыми игровыми консолями - вы можете легко создавать игры в стиле пиксель-арт.
Данный модуль так же поддерживает джойстик, поэтому вам даже не нужна клавиатура и мышь 🤯
В модуле есть редактор изображений и музыки, поэтому никуда отлучаться не нужно :3
Есть 2 версии Pyxel, одна автономная, а другая - нет, но сейчас мы говорим про модуль Python.
Ставится командой ⚙
Документация и примеры кода здесь.
Благодаря своей простоте, вдохновленной старыми игровыми консолями - вы можете легко создавать игры в стиле пиксель-арт.
Данный модуль так же поддерживает джойстик, поэтому вам даже не нужна клавиатура и мышь 🤯
В модуле есть редактор изображений и музыки, поэтому никуда отлучаться не нужно :3
Есть 2 версии Pyxel, одна автономная, а другая - нет, но сейчас мы говорим про модуль Python.
Ставится командой ⚙
pip install -U pyxel
Документация и примеры кода здесь.
🤯33👍24🔥3❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Manim — это библиотека для того, чтобы создавать точные математические анимации!
Сложнейшие математические графики, симуляции и точные анимации — всё это есть в Manim!
Например, на гифке выше вы можете наблюдать за "гармоническим маятником" который создан при помощи Manim. Красиво, не правда ли?
Ставится командой ⚙
Сложнейшие математические графики, симуляции и точные анимации — всё это есть в Manim!
Например, на гифке выше вы можете наблюдать за "гармоническим маятником" который создан при помощи Manim. Красиво, не правда ли?
Ставится командой ⚙
pip install manim
Документация и примеры кода здесь👍35❤1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Симуляция гравитации :3
Очень красивая реализация гравитационного поля. так же как и пончик, эта симуляция создана с помощью математических вычислений.
Использованные модули: pygame, math и random. pygame для поля, math для математических вычислений а random для диопазона.
Есть 3 представленных формы для симуляции, а именно: line, square и circle. Думаю по желанию можно добавить ещё несколько форм :)
Всё выглядит безумно круто 🔥
Код вы можете найти здесь
Очень красивая реализация гравитационного поля. так же как и пончик, эта симуляция создана с помощью математических вычислений.
Использованные модули: pygame, math и random. pygame для поля, math для математических вычислений а random для диопазона.
Есть 3 представленных формы для симуляции, а именно: line, square и circle. Думаю по желанию можно добавить ещё несколько форм :)
Всё выглядит безумно круто 🔥
Код вы можете найти здесь
🔥43👍7
Type hinting - это аннотация типов для простого чтения кода.
Сверху приведён пример type hinting'a, там мы присваиваем двум аргументам тип данных "int" через двоеточие, стрелка "->" указывает, что функция add() вернёт int.
Для чего нужен type hinting? С type hinting'ом намного легче понять код и делать рефакторинг в будущем.
Раньше, когда на Python писали в основном небольшие скрипты, это не было такой уж острой проблемой, потому что всю программу за разумный промежуток времени можно было охватить взглядом и понять. В последнее время язык стал значительно популярнее.
Нужно отметить, что type hinting — это именно возможность, а не обязанность. У программиста есть выбор — добавлять информацию о типах или нет.
Чтобы узнать больше — читайте документацию здесь.
Сверху приведён пример type hinting'a, там мы присваиваем двум аргументам тип данных "int" через двоеточие, стрелка "->" указывает, что функция add() вернёт int.
Для чего нужен type hinting? С type hinting'ом намного легче понять код и делать рефакторинг в будущем.
Раньше, когда на Python писали в основном небольшие скрипты, это не было такой уж острой проблемой, потому что всю программу за разумный промежуток времени можно было охватить взглядом и понять. В последнее время язык стал значительно популярнее.
Нужно отметить, что type hinting — это именно возможность, а не обязанность. У программиста есть выбор — добавлять информацию о типах или нет.
Чтобы узнать больше — читайте документацию здесь.
👍32❤1
Typing — это библиотека которая обеспечивает поддержку выполнения аннотации типов.
В предыдущем посте мы рассмотрели аннотацию типов, сейчас же мы рассмотрим вспомогательную библиотеку typing для работы с аннотацией типов.
Для чего вам нужна вспомогательная библиотека? Как минимум для того, что это сильно облегчает процесс написания аннотации типов.
На фотографии выше видно, как мы используем Union и с помощью него создаём тип интонации, где мы указываем список типов в квадратных скобках а затем используем эти 2 типа, а именно float и int.
Библиотека довольно большая, поэтому документация и примеры здесь.
В предыдущем посте мы рассмотрели аннотацию типов, сейчас же мы рассмотрим вспомогательную библиотеку typing для работы с аннотацией типов.
Для чего вам нужна вспомогательная библиотека? Как минимум для того, что это сильно облегчает процесс написания аннотации типов.
На фотографии выше видно, как мы используем Union и с помощью него создаём тип интонации, где мы указываем список типов в квадратных скобках а затем используем эти 2 типа, а именно float и int.
Библиотека довольно большая, поэтому документация и примеры здесь.
👍26❤1
🐍 Совет по Python №7.
Используйте понятные названия.
Уметь давать понятные названия — это один из самых важных навыков хорошего программиста.
Что такое понятные названия?
Это такие имена переменных, которые четко отражают их содержимое, то есть то - что они хранят.
То же самое относится и к файлам, функциям, классам и т.д.
Так же понятные названия не изменяют вывод, как многие могли подумать.
Это облегчает работу с кодом в будущем, и для довольно крупных проектов это очень важный момент!
Как видите, на скрине выше - в переменной "
Нужно отметить, что понятные названия — это именно возможность, а не обязанность.
У программиста есть выбор добавлять информацию в названиях или нет.
Используйте понятные названия.
Уметь давать понятные названия — это один из самых важных навыков хорошего программиста.
Что такое понятные названия?
Это такие имена переменных, которые четко отражают их содержимое, то есть то - что они хранят.
То же самое относится и к файлам, функциям, классам и т.д.
Так же понятные названия не изменяют вывод, как многие могли подумать.
Это облегчает работу с кодом в будущем, и для довольно крупных проектов это очень важный момент!
Как видите, на скрине выше - в переменной "
name"
интуитивно понятно что там находится имя, но вот про переменную "a"
ничего сказать не выйдет :(Нужно отметить, что понятные названия — это именно возможность, а не обязанность.
У программиста есть выбор добавлять информацию в названиях или нет.
👍65😁5🤔1
geopy — это модуль для работы с геолокациями.
Данный модуль позволяет находить координаты городов, стран и достопримечательностей по всему миру!
Модуль позволяет: определить адрес места по координатам, определить координаты по адресу места и расчитать растояние между двумя точками, что может быть полезно в некоторых проектах.
На примере выше мы видим, как мы указываем имя своему приложению а затем ищем и выводим координаты Японии 🇯🇵
Geopy является клиентом для популярных сервисов геокодирования, поэтому и в своей работе использует сторонние геокодеры такие как: Google Geocoding API, OpenStreetMap и много других сервисов геокодирования.
Ставится командой ⚙
Документация и примеры кода здесь.
Данный модуль позволяет находить координаты городов, стран и достопримечательностей по всему миру!
Модуль позволяет: определить адрес места по координатам, определить координаты по адресу места и расчитать растояние между двумя точками, что может быть полезно в некоторых проектах.
На примере выше мы видим, как мы указываем имя своему приложению а затем ищем и выводим координаты Японии 🇯🇵
Geopy является клиентом для популярных сервисов геокодирования, поэтому и в своей работе использует сторонние геокодеры такие как: Google Geocoding API, OpenStreetMap и много других сервисов геокодирования.
Ставится командой ⚙
pip install geopy
Документация и примеры кода здесь.
👍25🤔4❤2
Обновлённая и расширенная версия самого нескучного урока по Python!)
Выучи за 1 час и уже пили свои проги и ботов на этом крутом языке ;)
https://www.youtube.com/watch?v=P0czP5MEbYQ
Выучи за 1 час и уже пили свои проги и ботов на этом крутом языке ;)
https://www.youtube.com/watch?v=P0czP5MEbYQ
YouTube
Учим Python за 1 час! #ОтПрофессионала | HD Remake
💗 Получи профессию python-разработчика с нуля в SkillFactory:
https://go.skillfactory.ru/toGEPQ
Скидка 45% по промокоду ХАУДИ до 30.06.2022 г.
Обновлённая и расширенная версия самого нескучного урока по Python!) Выучи за 1 час и уже пили свои проги и ботов…
https://go.skillfactory.ru/toGEPQ
Скидка 45% по промокоду ХАУДИ до 30.06.2022 г.
Обновлённая и расширенная версия самого нескучного урока по Python!) Выучи за 1 час и уже пили свои проги и ботов…
👍59🔥14😁4😢1
Folium — библиотека для визуализации данных на карте!
В предыдущем посте мы рассмотрели модуль geopy который был создан для работы с геолокациями, оттуда мы взяли координаты Японии, поэтому сегодня будем использовать именно эти координаты.
Folium позволяет как и привязать данные к карте для визуализации фоновых картограмм, так и передавать векторные, растовые и HTML визуализации в качестве маркеров на карте.
На примере выше мы видим, как в переменную "m" передаём координаты Японии и зумим так, как нам надо.
Далее в переменную tooltip передаётся текст, который будет показываться при наводке, добавляем маркер на заданные координаты и сохраняем в файл "xo_py.html".
То что у нас вышло - тут :3
Библиотека имеет ряд встроенных наборов тайлов от OpenStreetMap, Mapbox и Stamen и поддерживает пользовательские наборы тайлов с ключами API Mapbox или Cloudmade. folium поддерживает наложения изображений, видео, GeoJSON и TopoJSON.
Ставится командой ⚙
В предыдущем посте мы рассмотрели модуль geopy который был создан для работы с геолокациями, оттуда мы взяли координаты Японии, поэтому сегодня будем использовать именно эти координаты.
Folium позволяет как и привязать данные к карте для визуализации фоновых картограмм, так и передавать векторные, растовые и HTML визуализации в качестве маркеров на карте.
На примере выше мы видим, как в переменную "m" передаём координаты Японии и зумим так, как нам надо.
Далее в переменную tooltip передаётся текст, который будет показываться при наводке, добавляем маркер на заданные координаты и сохраняем в файл "xo_py.html".
То что у нас вышло - тут :3
Библиотека имеет ряд встроенных наборов тайлов от OpenStreetMap, Mapbox и Stamen и поддерживает пользовательские наборы тайлов с ключами API Mapbox или Cloudmade. folium поддерживает наложения изображений, видео, GeoJSON и TopoJSON.
Ставится командой ⚙
pip install folium
Документация и примеры кода здесь.👍35🔥4❤1🤯1
Генератор — это функция, которая возвращает объект итератора.
Она выглядит как обычная функция, за исключением того, что она содержит выражение yield для создания серии значений, которые можно использовать в цикле for … in или которые можно извлечь по одному с помощью функции next().
Сверху самый простой пример функции генератора.
Любая функция содержащая ключевое слово yield, является функцией генератора.
Генераторы это отличный способ улучшить производительность кода, и они очень просты в использовании!
Когда вызывается функция генератора, то она не возвращает единственное значение, как это делает оператор return. Вместо этого она возвращает объект генератора, который поддерживает протокол итератора.
Разница между yield и оператором return заключается в том, что при достижении выхода, состояние выполнения генератора приостанавливается и локальные переменные сохраняются. При следующем вызове метода генератора next() функция возобновит свое выполнение.
Подробнее о генераторах вы можете почитать здесь.
Она выглядит как обычная функция, за исключением того, что она содержит выражение yield для создания серии значений, которые можно использовать в цикле for … in или которые можно извлечь по одному с помощью функции next().
Сверху самый простой пример функции генератора.
Любая функция содержащая ключевое слово yield, является функцией генератора.
Генераторы это отличный способ улучшить производительность кода, и они очень просты в использовании!
Когда вызывается функция генератора, то она не возвращает единственное значение, как это делает оператор return. Вместо этого она возвращает объект генератора, который поддерживает протокол итератора.
Разница между yield и оператором return заключается в том, что при достижении выхода, состояние выполнения генератора приостанавливается и локальные переменные сохраняются. При следующем вызове метода генератора next() функция возобновит свое выполнение.
Подробнее о генераторах вы можете почитать здесь.
👍31❤2
Googletrans — это бесплатная и неограниченная библиотека Python, в которой реализован API Google Translate.
Что умеет данная библиотека?
Данная библиотека умеет переводить текст со 106-ти языков 🤯 (включая русский, украинский и, конечно же, английский), обнаруживать языки, писать транскрипция и другие полезные функции.
Где это может пригодится?
Библиотека может пригодится в различных ботах, сайтах, приложениях и тому подобное.
В связке с библиотекой gTTS (библиотека для озвучивания текста от Google) может получиться полноценная программа для перевода текста 🔥
Ставится командой ⚙
Документация и примеры кода здесь.
Что умеет данная библиотека?
Данная библиотека умеет переводить текст со 106-ти языков 🤯 (включая русский, украинский и, конечно же, английский), обнаруживать языки, писать транскрипция и другие полезные функции.
Где это может пригодится?
Библиотека может пригодится в различных ботах, сайтах, приложениях и тому подобное.
В связке с библиотекой gTTS (библиотека для озвучивания текста от Google) может получиться полноценная программа для перевода текста 🔥
Ставится командой ⚙
pip install googletrans
Документация и примеры кода здесь.
👍56🤩10🔥1