Как установить pygame в visual studio
Это пошаговое руководство для пользователей, начинающих работу с Python в Windows.
Настройка среды разработки
Для начинающих, которые не знакомы с Python, рекомендуется установить Python из Microsoft Store. При установке из Microsoft Store используется базовый интерпретатор Python3, но в дополнение к автоматическому обновлению также настраиваются параметры пути для текущего пользователя (без необходимости доступа администратора). Это особенно полезно, если вы работаете из среды образовательного учреждения или являетесь частью организации, которая ограничивает разрешения или административный доступ на компьютере.
Установка Python
Чтобы установить Python с помощью Microsoft Store, сделайте следующее:
Перейдите в меню Пуск (значок Windows в нижнем левом углу), введите "Microsoft Store" и щелкните ссылку, чтобы открыть магазин.
Когда магазин откроется, выберите Поиск в верхнем правом меню и введите "Python". Выберите, какую версию Python вы хотите использовать, из результатов в разделе «Приложения». Мы рекомендуем использовать самую последнюю версию, если только у вас нет причин для обратного (например, по причине согласования с версией, использованной в уже существующем проекте, над которым вы планируете работать). Определив, какую версию вы хотите установить, выберите Получить.
После того как Python завершит процесс загрузки и установки, откройте Windows PowerShell, используя меню Пуск (значок Windows в нижнем левом углу). После открытия PowerShell введите Python --version , чтобы убедиться, что Python 3 установлен на компьютере.
Установка Python из Microsoft Store содержит стандартный диспетчер пакетов pip. Pip позволяет устанавливать дополнительные пакеты, которые не входят в стандартную библиотеку Python, и управлять ими. Чтобы убедиться, что у вас есть pip, который можно использовать для установки пакетов и управления ими, введите pip --version .
Установка Visual Studio Code
При использовании VS Code в качестве текстового редактора или интегрированной среды разработки (IDE) вам доступны IntelliSense (помощь в завершении кода), анализ кода (помогает избежать ошибок в коде), поддержка отладки (помогает находить ошибки в коде после запуска), фрагменты кода (шаблоны для небольших повторно используемых блоков кода) и модульное тестирование (тестирование интерфейса кода с различными типами входных данных).
VS Code также содержит встроенный терминал, который позволяет открывать командную строку Python с помощью командной строки Windows, PowerShell или любой другой, создавая простой рабочий процесс между редактором кода и командной строкой.
Установив VS Code, необходимо также установить расширение Python. Для установки расширения Python можно выбрать ссылку на VS Code в Marketplace или открыть VS Code и выполнить поиск по фразе Python в меню расширений (Ctrl+Shift+X).
Python — интерпретируемый язык, и для выполнения кода Python необходимо указать VS Code, какой интерпретатор нужно использовать. Мы рекомендуем использовать самую последнюю версию Python, если у вас нет особой причины для обратного. После установки расширения Python выберите интерпретатор Python 3, открыв палитру команд (CTRL+SHIFT+P), и начните вводить команду Python: Select Interpreter (Python: выбор интерпретатора) для поиска, а затем выберите появившуюся команду. Вы также можете использовать параметр Select Python Environment (Выбрать среду Python) в нижней строке состояния, если она доступна (возможно, уже отображается выбранный интерпретатор). Команда предоставляет список доступных интерпретаторов, которые VS Code может найти автоматически, включая виртуальные среды. Если нужный интерпретатор не отображается, перейдите к статье о настройке сред Python.
Чтобы открыть терминал в VS Code, выберите Просмотр>Терминал или используйте клавиши CTRL+` (символ обратного апострофа). Терминалом по умолчанию является PowerShell.
В окне терминала VS Code откройте Python, просто введя команду: python
Попробуйте использовать интерпретатор Python, введя: print("Hello World") . Python вернет фразу "Hello World".
Установка Git (необязательно)
Если вы планируете совместно работать над кодом Python с другими пользователями или размещать проект на сайте с открытым исходным кодом (например, GitHub), примите во внимание, что VS Code поддерживает управление версиями с помощью Git. Вкладка системы управления версиями в VS Code отслеживает все изменения и содержит общие команды Git (добавление, фиксация, принудительная отправка, извлечение) прямо в пользовательском интерфейсе. Сначала необходимо установить Git для включения панели управления версиями.
Скачайте и установите Git для Windows с веб-сайта git-scm.
В комплект входит мастер установки, который задает вам ряд вопросов о параметрах установки Git. Рекомендуется использовать все параметры по умолчанию, если у вас нет конкретной причины изменить какой-либо из них.
Если вы никогда не использовали Git, обратитесь к руководствам по GitHub. Они помогут вам приступить к работе.
Учебник по некоторым основам работы с Python (на примере Hello World)
Python, согласно его создателю Гвидо ван Россуму, — это "язык программирования высокого уровня, и его основная философия проектирования — это удобочитаемость кода и синтаксис, позволяющий программистам выразить концепции в нескольких строках кода".
Python — интерпретируемый язык. В отличие от скомпилированных языков, в которых написанный код необходимо перевести в машинный код для выполнения процессором компьютера, код Python передается непосредственно интерпретатору и запускается напрямую. Просто введите код и запустите его. Попробуем сделать это!
Откройте командную строку PowerShell и введите python , чтобы запустить интерпретатор Python 3. (В некоторых инструкциях указано использовать команду py или python3 , которые также подойдут.) Если вы делаете все правильно,появится командная строка с тремя символами "больше, чем" >>>.
Существует несколько встроенных методов, позволяющих вносить изменения в строки в Python. Создайте переменную с помощью команды variable = 'Hello World!' . Нажмите клавишу ВВОД для создания новой строки.
Выведите переменную с помощью команды print(variable) . Отобразится текст "Hello World!".
Выясните, сколько символов используется для переменной строки, с помощью команды len(variable) . Будет показано, что используется 12 символов. (Обратите внимание, что пробел учитывается как символ в общей длине.)
Преобразуйте строковую переменную в буквы верхнего регистра: variable.upper() . Теперь преобразуйте строковую переменную в буквы нижнего регистра: variable.lower() .
Подсчитайте, сколько раз буква "l" используется в строковой переменной: variable.count("l") .
Найдите определенный символ в вашей строковой переменной. Давайте найдем восклицательный знак с помощью команды variable.find("!") . Будет показано, что восклицательный знак находится в позиции 11 строки.
Замените восклицательный знак на вопросительный знак: variable.replace("!", "?") .
Чтобы выйти из Python, введите exit() , quit() или нажмите клавиши CTRL+Z.
Надеемся, вам понравилось использовать некоторые из встроенных в Python методов модификации строк. Теперь попробуйте создать файл программы Python и запустить его с помощью VS Code.
Учебник по использованию Python с VS Code (на примере Hello World)
Команда VS Code составила отличный учебник по началу работы с Python с пошаговым руководством по созданию программы Hello World с помощью Python, запуску программного файла, настройке и запуску отладчика, а также установке пакетов, таких как matplotlib и numpy, для создания графического изображения в виртуальной среде.
Откройте PowerShell и создайте пустую папку с именем hello, перейдите в эту папку и откройте ее в VS Code:
После открытия среды VS Code, где показана новая папка hello в левом окне обозревателя, откройте окно командной строки в нижней панели VS Code, нажав CTRL+` (символ обратного апострофа) или выбрав Просмотр>Терминал. После запуска VS Code в папке эта папка станет вашей рабочей областью. VS Code хранит параметры, относящиеся к этой рабочей области, в файле .vscode/settings.json. Они отделены от параметров пользователя, которые хранятся глобально.
Продолжайте работу с учебником в документации для VS Code: Сведения о создании файла исходного кода для Hello World на Python.
Создание простой игры с помощью Pygame
Pygame — это популярный пакет Python для создания игр, который позволяет учащимся изучать программирование увлекательным способом. Pygame отображает графические изображения в новом окне, поэтому метод "только командной строки" WSL не подойдет. Но если вы установили Python с помощью Microsoft Store, как описано в этом учебнике, все получится.
После установки Python установите Pygame из командной строки (или терминала в VS Code), введя python -m pip install -U pygame --user .
Протестируйте установку, запустив пример игры: python -m pygame.examples.aliens
Если все в порядке, откроется окно игры. По завершении игры закройте окно.
Вот как начать написание кода собственной игры:
Откройте PowerShell (или командную строку Windows) и создайте пустую папку с именем bounce. Перейдите к этой папке и создайте файл с именем bounce.py. Откройте папку в VS Code:
С помощью VS Code введите следующий код Python (или скопируйте и вставьте его):
Сохраните его как: bounce.py .
Запустите его в терминале PowerShell, введя: python bounce.py .
Попробуйте изменить некоторые из чисел, чтобы увидеть, как они влияют на прыгающий шарик.
Материалы для непрерывного обучения
Мы рекомендуем использовать следующие ресурсы, чтобы продолжить изучение разработки на Python в Windows.
Онлайн-курсы для изучения Python
Введение в Python на Microsoft Learn. Попробуйте интерактивную платформу Microsoft Learn и получите навыки выполнения этого модуля, охватывающего основы написания базового кода Python, объявления переменных и работы с входными и выходными данными консоли. Интерактивная среда песочницы предоставляет эту отличную возможность начать пользователям, у которых еще не настроена среда разработки Python.
Python на Pluralsight: 8 курсов, 29 часов. Схема обучения Python на Pluralsight предлагает онлайн-курсы, охватывающие различные темы, связанные с Python, включая средство для измерения навыков и поиска пробелов в знаниях.
Работа с Python в VS Code
Редактирование Python в VS Code. Узнайте больше о том, как воспользоваться преимуществами автозаполнения VS Code и поддержкой IntelliSense для Python, включая их настройку или отключение.
Анализ кода Python. Анализ кода — это процесс запуска программы, которая будет анализировать код на наличие возможных ошибок. Узнайте о различных формах поддержки анализа кода VS Code для Python и о том, как выполнить его настройку.
Отладка Python. Отладка — это процесс обнаружения и удаления ошибок из компьютерной программы. В статье по этой ссылке описывается инициализация и настройка отладки для Python с помощью VS Code, установка и проверка точек останова, присоединение локального скрипта, выполнение отладки для различных типов приложений или на удаленном компьютере, а также некоторые основные способы устранения неполадок.
Модульное тестирование Python. В статье по этой ссылке содержатся некоторые основные сведения о модульном тестировании, включении платформы тестирования, создании и выполнении тестов, отладке тестов и параметрах конфигурации теста, а также приведено пошаговое руководство с примером.
Используя эти возможности, программист имеет возможность создавать простые графические приложения, в том числе и несложные игры. Возможно, вы уже обратили внимание, что библиотека PyGame не содержит физического движка и всю физику в играх приходится прописывать самостоятельно на основе уравнений физики. Также в этой библиотеке нет понятий камер и все изменения состояний на плоскости осуществляется путем простого перемещения объектов в области игрового пространства. Так что, PyGame определенно не игровой движок, но очень удобен, когда нужно быстро реализовать графическое приложение с элементарной анимацией на плоскости и некоторыми звуковыми эффектами.
Вообще, PyGame – это Python-обертка над С++ — библиотекой Simple Directmedia Layer (SDL) и имеет большое интернет-сообщество с официальным сайтом:
и подробной документацией:
С чего мы начнем и как будем изучать этот модуль? Вначале нужно понять общий принцип работы PyGame и основные возможности его функционала. А, затем, на конкретных примерах посмотреть, как это все работает. Именно с этих позиций я и буду строить наши занятия.
Установка PyGame
Первым делом нам нужно установить PyGame. Делается это очень просто. Под ОС Windows следует выполнить команду:
pip install pygame
(похожим образом происходит установка и в других ОС). Далее, непосредственно в Python, создайте новый проект и запишите две строчки:
Если они выполняются без ошибок, значит библиотека установлена и готова к работе.
Каркас приложения
Давайте теперь реализуем простейшее минимальное приложение на PyGame. Первые две строчки у нас уже есть. Фактически, первая выполняет импорт основного модуля, а вторая импортирует массу других необходимых расширений (иначе бы нам каждый раз приходилось бы делать это вручную). То есть, мы здесь просто подключили саму библиотеку. Что дальше? Далее сформируем окно самого приложения с помощью следующей функции:
Если теперь запустить эту программу, то мы увидим окно на экране, которое тут же закроется. Почему приложение так себя ведет? Дело в том, что все три строчки были выполнены и программа попросту завершилась. Мы увидели окно, которое потом было автоматически закрыто. Чтобы оно оставалось на экране и отображало текущую графическую информацию, необходимо добавить главный цикл обработки событий:
То есть, в нашем приложении должен быть цикл, в котором постоянно просматриваются возникающие события из очереди событий, а затем, обрабатываются (другими словами, выполняются некоторые действия в зависимости от типа события).
Для реализации такого цикла можно создать «вечный» цикл, в котором будут проверяться произошедшие события и при необходимости обрабатываться. В самом простом варианте это можно сделать так:
Смотрите, здесь задан «вечный цикл» и внутри еще один цикл for, который выбирает события из очереди событий. Сама очередь – это итерируемый объект, к которому мы обращаемся с помощью конструкции pygame.event.get(). В результате переменная event будет ссылаться на текущее событие из этой очереди. Каждое событие – это объект, который содержит наборы различных свойств. В частности, все события имеют свойство type, которое мы и проверяем. Если оно равно константе pygame.QUIT, значит, пришло событие закрытия приложения. И здесь, в качестве обработчика выступает стандартная Python-функция exit, которая завершает наше приложение. Теперь, при запуске программы мы видим окно на экране, пока не закроем его. При закрытии срабатывает событие pygame.QUIT и программа завершается. Если, в качестве примера, вместо exit написать pass, то наше окно закрываться не будет, т.к. мы фактически удалили обработчик и ничего не делаем при возникновении этого события.
Однако, использовать непосредственно функцию exit() не всегда бывает удобно. Возможно, нам нужно просто завершить цикл и остановить работу PyGame, но продолжать дальнейшее выполнение программы. В этом случае можно воспользоваться функцией quit() пакета PyGame:
Но при закрытии окна мы увидим ошибку (исключение). Откуда она взялась? Это из-за того, что при остановке PyGame основной цикл продолжает работать и на следующей итерации пытается обратиться к очереди событий. Но эта команда уже не может быть выполнена, т.к. PyGame остановлен и уже не работает. Отсюда и возникает это исключение. Поэтому, мы поправим эту программу, добавим условие работы главного цикла:
Теперь все работает так, как мы этого и ожидаем. Вот так выглядит минимальный каркас приложения PyGame.
Задержка и формирование нужного FPS
Однако в такой реализации есть один существенный недостаток. Главный цикл работает слишком быстро: каждые несколько миллисекунд проверяется очередь событий. Это избыточно нагружает процессор компьютера. События так быстро не генерируются. Даже когда выполняется анимация в динамических играх (типа арканоид), вполне достаточно 60 кадров в секунду, т.е. выполнять главный цикл с частотой:
1/60 сек = 17 миллисекунд
А в статических играх, типа пасьянс, минер и т.п., достаточно 30 кадров в секунду:
1/30 сек = 34 миллисекунд
Как создать нужные задержки в главном цикле приложения? Если действовать «в лоб», то можно просто прописать эти временные величины внутри цикла while:
Но это не лучшее решение: на разных устройствах время выполнения итерации цикла будет разным (из-за разной скорости работы ЦП). Здесь задержка в 20 мс добавляется ко времени выполнения программы внутри цикла. То есть, мы не учитываем время обработки событий, а просто добавляем задержку в 20 мс. В результате цикл будет работать немного дольше. И это может негативно сказаться на игровом процессе: на одном устройстве игровой персонаж будет быстрее проходить уровень, а на другом – медленнее. Поэтому, правильнее использовать встроенный в PyGame инструмент тиков на основе класса Clock:
Здесь в методе tick указывается частота выполнения цикла за одну секунду. То есть, параметр 60 указывает выполнять цикл while 60 раз в секунду. При этом автоматически учитывается время, затраченное на выполнение других строчек кода на каждой текущей итерации и оно вычитается при формировании задержки. В результате, мы получаем время каждой итерации примерно 17 мс. И это время будет одинаковым на всех устройствах (разумеется, если оно будет способно обеспечивать такую скорость выполнения итераций цикла).
Вот эту величину (60) называют Frames Per Second (FPS) и, обычно, определяют вначале программы через переменную:
Наконец, последний штрих. Изменим заголовок окна и его иконку. Это делается с помощью вот таких двух строчек:
- pygame.FULLSCREEN – полноэкранный режим;
- pygame.DOUBLEBUF – двойная буферизация (рекомендуется при совместном использовании HWSURFACE или OPENGL);
- pygame.HWSURFACE – аппаратное ускорение отрисовки (только для режима FULLSCREEN);
- pygame.OPENGL – обработка отображений с помощью библиотеки OpenGL;
- pygame.RESIZABLE – окно с изменяемыми размерами;
- pygame.NOFRAME – окно без рамки и заголовка;
- pygame.SCALED – разрешение, зависящее от размеров рабочего стола.
Например, если прописать флаг:
то окно можно будет менять в размерах. Или так:
Мы здесь сразу включаем двойную буферизацию, аппаратное ускорение и полноэкранный режим. По аналогии используются остальные флаги.
Вот так мы с вами получили вполне рабочий каркас приложения на PyGame. На следующем занятии увидим как можно рисовать графические примитивы в окне программы.
Видео по теме
© 2021 Частичное или полное копирование информации с данного сайта для распространения на других ресурсах, в том числе и бумажных, строго запрещено. Все тексты и изображения являются собственностью сайта
Русские Блоги
Pygame — это кроссплатформенный модуль Python, разработанный специально для видеоигр. Он может использоваться для управления графикой, анимацией и даже звуками. Он основан на SDL и позволяет разрабатывать видеоигры в реальном времени, не ограничиваясь низкоуровневыми языками, такими как машинный язык и язык ассемблера. Pygame выполняет такие задачи, как рисование изображений на экране. Вам не нужно учитывать много утомительных и сложных задач по кодированию, а сосредоточиться на продвинутой логике программы.
Вы можете найти установщик Windows, соответствующий используемой версии Python, по следующим трем адресам:
Если вы загрузили файл .exe, запустите его напрямую. Если вы загрузили файл .whl, вам нужно открыть командное окно, переключиться на каталог, в котором находится файл, и использовать pip для его запуска:
Сначала проверьте, установлен ли на компьютере pip, откройте окно терминала и выполните следующую команду:
Если информация о версии выводится, она устанавливается:
Может быть использован снова после установки python -m pip —version Команда проверяет, успешно ли установлен pip. После успешной установки pip используйте следующую команду для установки Pygame: (Обратите внимание, что вы должны сначала перейти в каталог файла, который вы скачали)
Например, моя версия Python — 3.6.5, 64-разрядная, вам нужно скачать pygame ‑ 1.9.4 ‑ cp36 ‑ cp36m ‑ win_amd64.whl, файл будет сохранен на рабочем столе, установить Pygame с помощью следующей команды:
Pygame и разработка игр
Pygame – это библиотека модулей для языка Python, созданная для разработки 2D игр. Также Pygame могут называть фреймворком. В программировании понятия "библиотека" и "фреймворк" несколько разные. Но когда дело касается классификации конкретного инструмента, не все так однозначно.
В любом случае, фреймворк является более мощным по-сравнению с библиотекой, он накладывает свою специфику на особенности программирования и сферу использования продукта. С точки зрения специфики Pygame – это фреймворк. Однако его сложно назвать "мощным инструментом". По своему объему и функционалу это скорее библиотека.
Также существует понятие "игрового движка" как программной среды для разработки игр. По своему назначению Pygame можно считать игровым движком. В то же время, с точки зрения классификации программного обеспечения, Pygame является API для Питона к API библиотеки SDL.
API – это интерфейс (в основном набор функций и классов) для прикладного (часто более высокоуровневого) программирования, который предоставляет, например, та или иная библиотека. SDL – это библиотека, которая работает с мультимедийными устройствами компьютера.
В этом смысле Pygame можно сравнить с Tkinter, который через свои функции и классы предоставляет Питону доступ к графической библиотеке Tk.
Особенности разработки компьютерных игр
Игры событийно-ориентированны, также как любое приложение с графическим интерфейсом пользователя. Поэтому какие-никакие, но игры можно было бы писать с помощью Tkinter, в частности на его экземплярах холста. Но поскольку основное назначение библиотеки графического пользовательского интерфейса совсем другое, то пришлось бы изобретать велосипеды. В то время как библиотека, специально предназначенная для написания игр, уже содержит необходимые объекты, что упрощает разработку.
Например, чтобы определить, столкнулись ли два объекта, надо написать код, проверяющий совпадение координат. Это может быть непростой задачей, так как надо учесть области перекрытия, форму объектов и др. В то же время игровой движок может включать готовую функцию проверки коллизии (столкновения) с необходимыми опциями настройки.
При всем этом Pygame достаточно низкоуровневый игровой движок, если его можно так называть. Это значит, что многое в нем не остается за кадром, а дается программисту на доработку, вынуждает его понимать, как работают "шестеренки". Так в Pygame отсутствует эмуляция физических явлений. Если вам надо смоделировать движение с ускорением или по дуге, программируйте это сами, предварительно взяв из курса физики соответствующую формулу.
Игры относятся к мультимедийным приложениям. Однако, в отличие от других приложений этой группы, для них характерна сложная программная логика и нередко много математики, хотя достаточно простой, плюс эмуляция физических явлений. В играх программируется подобие искусственного интеллекта. В многопользовательской игре, хотя пользователи играют друг с другом, а не с ИИ, создаются виртуальные миры, существующие по законам, заложенным разработчиками.
В программном коде игры выделяют три основных логических блока:
Отслеживание событий, производимых пользователем и не только им.
Изменение состояний объектов, согласно произошедшим событиям.
Отображение объектов на экране, согласно их текущим состояниям.
Эти три этапа повторяются в цикле бесчисленное количество раз, пока игра запущена.
Место Pygame среди инструментов разработки игр
Популярна ли библиотека pygame, пишут ли на ней сложные игры? Хотя на Pygame есть востребованные игры, в подавляющем случае – нет. Для программирования под андроид и десктоп существуют более функциональные игровые движки.
В чем тогда преимущество Pygame? Оно в легком вхождении в отрасль и прототипировании. Pygame – небольшая библиотека. Сам Python позволяет писать короткий и ясный код. Так что это хорошее начало, чтобы познакомиться с особенностями разработки игр. Более опытными программистами Pygame может использоваться для быстрого создания прототипа игры, чтобы посмотреть, как все будет работать. После этого программа переписывается на другом языке. Другими словами, преимущество Pygame в легком обучении и быстрой разработке.
Как установить Pygame
Pygame не входит в стандартную библиотеку Python, то есть не поставляется с установочным пакетом, а требует отдельной установки. В Ubuntu и родственных дистрибутивах его можно установить с помощью pip:
Если pip не установлен, предварительно выполняем команду:
Проверить, что все установилось нормально, можно так:
Для Windows вместо ‘python3’ надо писать ‘py’. Произойдет запуск игры aliens, включенной в модуль examples (примеры) библиотеки pygame.
Курс с примерами решений практических работ:
android-приложение, pdf-версия
Сообщество разработчиков на Python создало тысячи полезных пакетов, которые вы можете включать в свои проекты. В Visual Studio имеется пользовательский интерфейс для управления пакетами в средах Python.
Просмотр окружений
Выберите команду меню Просмотр > Другие окна > Окружения Python. Откроется окно Окружения Python (как узел обозревателя решений), в котором представлены разные среды, доступные вам. Список содержит как среды, установленные с помощью установщика Visual Studio, так и среды, которые вы установили отдельно. В их число входят глобальные, виртуальные среды и среды Conda. Среда, выделенная полужирным шрифтом, — это среда, используемая по умолчанию для новых проектов. Дополнительные сведения о работе со средами см. в разделе Создание окружений Python и управление ими в средах Visual Studio.
Можно также открыть окно "Окружения Python", выбрав окно Обозревателя решений и нажав сочетание клавиш CTRL+K, CTRL+` . Если сочетание клавиш не работает и окно "Окружения Python" отсутствует в меню, возможно, не установлена рабочая нагрузка Python. Инструкции по установке Python см. в статье Установка поддержки Python в Visual Studio.
На вкладке Обзор среды можно быстро получить доступ к интерактивному окну этой среды, а также к ее папке установки и интерпретаторам. Например, щелкните ссылку Открыть интерактивное окно, и в Visual Studio откроется интерактивное окно для этой среды.
Теперь создайте проект, выбрав пункт меню Файл > Создать > Проект, а затем выбрав шаблон Приложение Python. В появившийся файл кода вставьте приведенный ниже код, который строит косинусоиду, как в предыдущих шагах учебника, но теперь в виде графика. Кроме того, можно использовать ранее созданный проект и заменить код.
В открытом проекте Python можно открыть окно "Окружения Python" из Обозревателя решений, щелкнув правой кнопкой мыши Окружения Python и выбрав Просмотреть все окружения Python.
Если в окне редактора вы наведете указатель мыши на операторы импорта numpy и matplotlib , вы заметите, что они не разрешены. Это связано с тем, что пакеты не были установлены в глобальную среду по умолчанию.
Установка пакетов с помощью окна "Окружения Python"
В окне "Окружения Python" выберите среду по умолчанию для новых проектов Python и перейдите на вкладку Пакеты. На ней вы увидите список пакетов, установленных в настоящее время в среде.
Установите пакет matplotlib , введя его имя в поле поиска, а затем выбрав параметр Выполнить команду "pip install matplotlib" . Будет установлен пакет matplotlib , а также все пакеты, от которых он зависит (в данном случае — numpy ).
Согласитесь на повышение прав, если появится соответствующий запрос.
Установленный пакет появится в окне Окружения Python. Если щелкнуть знак X справа от пакета, он будет удален.
Под названием среды может появиться небольшой индикатор выполнения, который указывает на то, что Visual Studio создает базу данных IntelliSense для нового пакета. На вкладке IntelliSense также приводятся более подробные сведения. Имейте в виду, что, пока база данных не будет готова, функции IntelliSense, такие как автозавершение и проверка синтаксиса, будут неактивны для этого пакета в редакторе.
Запуск программы
После установки matplotlib запустите программу с отладчиком (F5) или без него (CTRL+F5), чтобы увидеть результат.
Как импортировать pygame в visual studio code?
Я использую visual studio code для кодирования (python), и теперь мне нужно написать программу с pygame для моего проекта, и я не могу import pygame в visual studio code (я могу import это с помощью скрипта python, он просто не может быть import ed в visual studio code).
3 ответа
Вот решение, которое я попробовал:
Слева внизу вашего vs-кода Вы можете найти среду python, вы можете на изображении, которое я отметил красным цветом:
после нажатия на красную отмеченную область вы можете увидеть ниже опцию для выбора:
из опции выберите нужный вам вариант. Предположим, сначала я пытался выбрать 2-й, но он не работал, затем я попробовал с последним, и это сработало.
- Откройте terminal Vscode.
- Введите pip install pygame или pip3 install pygame .
- Импортируйте pygame и наслаждайтесь им.
Если он работает в консоли при вводе ‘python yourscript.py’, но не в коде vs, вы должны нажать ctrl+shift+p и использовать clic на Python select interpreter для переключения на правый env. если он все еще не работает, то установите пакет, запустив ‘python-m pip install pygame’
Похожие вопросы:
Как следует из темы, я хотел бы импортировать/установить цветовую тему Visual Studio Code в Visual Studio 2017 для файлов JavaScript и TypeScript. Поэтому я хотел бы установить цветовую тему для.
Visual Studio Code кажется, что это был бы очень хороший инструмент, но прямо из ворот он, по-видимому, не может прочитать ни одной конфигурации, которая сделала бы его частью семейства Visual.
Я довольно новичок в Python и pygame, а также Visual Studio. Мне удалось установить Python 3.6 и pygame 1.9.3, и он работает до тех пор, пока я использую его в IDLE, но когда я иду, чтобы попытаться.
Я установил Pygame сниппетов в свой Visual Studio Code , а потом написал import pygame , и всегда получал ошибку import pygame ModuleNotFoundError: No module named ‘pygame’ Я искал любые способы.
У меня есть целый проект flutter, и я хочу импортировать его в visual studio code, но файл находится в файле zip. Как импортировать весь файл zip в visual studio code.
Я хотел бы иметь возможность работать над небольшой игрой Pygame в Visual Studio 2017 IDE. Я установил Python3.7 и последнюю версию pygame с установкой pip, но я запускаю программу, она не может.
Я пытаюсь использовать IronPython в Visual Studio Code. Как мне указать Visual Studio Code на мой IronPython (C:\Program файлов (x86)\IronPython 2.7\ipy.exe). Я искал на форумах и потерпел неудачу.
Я попытался импортировать модуль Tkinter в Visual Studio Code, когда писал код для разработки UI. Я получаю следующую ошибку: ModuleNotFoundError: No module named ‘Tkinter’ Должен ли я сделать pip.
Я не могу импортировать файл python из другой папки в visual studio code. Я также попытался сохранить файл init .py в своем модуле, но получил ту же ошибку. Я не хочу использовать pythonPATH. import.
Pygame Snippets
Python Extended is a vscode snippet that makes it easy to write codes in python by providing completion options along with all arguments.
Preview
Usage
Run vscode and on a python file, type the method name to complete and press tab or enter on selection.
How to install
Open vscode. Press F1 , search " ext install " followed by extension name, in this case: " ext install Pygame Snippets " without the ">". Or if you prefer ">ext install", hit enter, search "Pygame Snippets".
Contributions
Feel free to contribute to the extension. Fork it on github
License
Read LICENSE on the github repository
Acknowledgements
I’d first like to say a very big thank you to God my creator. Without him, this wouldn’t be possible.
Pygame — библиотека, предназначенная для разработки мультимедийных приложений с графическим интерфейсом, например игр.
Начало работы¶
Начнем знакомство с библиотекой непосредственно с разбора примера простого приложения:
В первую очередь импортируем модуль pygame в наш файл с исходным кодом:
Затем вызываем функцию init() для подготовки модулей pygame к работе:
После этого создаем графическое окно, передав в качестве аргумента в функцию set_mode() его разрешение в виде пары целых чисел. В свою очередь функция вернет нам объект типа Surface, используемый для представления изображений:
Далее, запускаем основной цикл программы, в котором, среди всех событий, происходящих в нашем приложении, перехватываем событие закрытия основного графического окна пользователем:
После того как ожидаемое событие наступило, завершаем работу с библиотекой pygame вызовом функции pygame.quit() и нашей программы вызовом функции exit() из модуля sys .
Рисование геометрических фигур¶
Разместим в окне нашего приложения прямоугольник. Прямоугольные объекты представлены типом Rect :
Для создания объекта этого типа нам необходимо указать координаты левого верхнего угла прямоугольника и длины его сторон:
Обратите внимание, что начало координат (0, 0) находится в левом верхнем углу окна.
В библиотеке pygame функции отображения геометрических фигур находятся в модуле draw . Нарисуем прямоугольник c помощью функции rect() :
Для этого передадим в функцию в качестве аргументов поверхность, на которой мы размещаем прямоугольник, его цвет, сам прямоугольник и толщину линии — стороны прямоугольника. Если толщина равна нулю прямоугольник закрашивается сплошным цветом.
Рассмотрим готовый пример:
Обратите внимание на последнюю строку нашей программы. На самом деле графические объекты которые мы хотим разместить на основном экране сначала попадают в специальный буфер. Чтобы отобразить изменения стали видны вызываем функцию flip() .
Прочие функции для рисования графических фигур¶
Нарисовать линию на поверхности Surface , цветом color , с началом в точке start_pos , концом в точке end_pos и толщиной линии width.
pygame.draw. lines ( Surface, color, closed, pointlist, width=1 ) ¶
Нарисовать линию, соединяющую точки из последовательности pointlist на поверхности Surface , цветом color , с толщиной линии width . Каждая точка представлена парой координат. Если параметр closed равен True , конечная точка соединяется с начальной.
Нарисовать окружность на поверхности Surface, цветом color , с центром в точке pos и радиусом radius . Если толщина линии width равна нулю, окружность закрашивается.
Нарисовать эллипс, ограниченный прямоугольником Rect , на поверхности Surface , цветом color . Если толщина линии width равна нулю, эллипс закрашивается.
pygame.draw. polygon ( Surface, color, pointlist, width=0 ) ¶
Нарисовать многоугольник по точкам из последовательности pointlist на поверхности Surface , цветом color , с толщиной линии width . Каждая точка представлена парой координат. Если толщина линии width равна нулю многоугольник закрашивается.
Значение для цвета можно задать тройкой чисел, каждое из которых лежит в диапазоне от 0 до 255. Первое значение в последовательности определяет, какое количество красного содержится в данном оттенке, второе — зеленого, третье — голубого. Чем меньше значение числа, тем темнее будет оттенок. Например, красный цвет можно представить как (255, 0, 0), белый как (255, 255, 255), а черный как (0, 0, 0).
Помимо этого, в модуле color из библиотеки pygame содержится словарь THECOLORS, ключами которого являются названия различных цветовых оттенков. Подключить его можно с помощью команды:
Закрасим основной экран c помощью метода fill() :
Текст и шрифты¶
При работе с текстом мы будем использовать шрифты — группы символов объединенных по стилистическому или иному признаку. Шрифты в библиотеке pygame представлены типом Font
Чтобы создать объект Font на основе имеющегося в системе шрифта вызовем следующую функцию:
С помощью параметра name передаем в функцию имя шрифта, параметр size — размер шрифта в пунктах. Параметры bold и italic отвечают за начертание шрифта.
Список имеющихся в системе шрифтов можно получить с помощью функции get_fonts() :
Далее, с помощью метода render() нашего объекта типа Font получаем изображение с текстом, которое передаем на вход методу blit() для отрисовке на нашем основном экране:
Текст размещается в на основном экране по координатам (50, 50)
Задания¶
1. Используя функции для работы с графикой библиотеки pygame, нарисуйте дом с квадратным основанием и треугольной крышей.
2. Используя функции для работы с графикой библиотеки pygame, нарисуйте белый флаг с олимпийскими кольцами.
3. Разработайте программу, которая разбивает основное игровое окно на клетки заданного размера.
4. Доработайте программу так, чтобы в каждой клетке был записан её порядковый номер.
5. Доработайте в программу возможность закрашивания клетки с произвольным номером случайным цветом. Номера клеток которые необходимо закрасить считывать из файла.
Создаем игру с Pygame и Python
Если вы задумываетесь над созданием собственной игры, но не хотите переходить на другой язык ради карьеры разработчика игр, то для этого есть решение! С помощью модуля Pygame вы можете использовать навыки Python для создания игр, от базовых до очень сложных. В сегодняшней статье вы узнаете, как использовать Pygame, сделав клон игры Asteroids! Для начала создадим главный класс нашей игры, в который входят: обработка пользовательского ввода, логика игры, отрисовка игровых объектов.
Для правильной организации проекта создадим новую директорию и перейдем в нее:
Далее создадим виртуальную среду и установим нужную версию pygame:
(my_progect)>>> pip install pygame==2.0.0
В папке game_project создадим файл game.py Далее импортируем модуль pygame для получения доступа ко всем его функциям
Следующим шагом создаем класс игры, c конструктором класса где инициализируем pygame, так как это идеальное место для размещения любых методов, необходимых для инициализации Pygame.
Изображения в Pygame представлены поверхностями. Поверхности можно рисовать друг на друге, что позволяет создавать сложные сцены из простых картинок. В каждом проекте Pygame есть одна специальная поверхность. Эта поверхность представляет собой экран и является той, которая в конечном итоге будет показана игрокам. Все остальные поверхности должны быть нарисованы на этой в какой-то момент. В противном случае они не будут показаны. Чтобы создать поверхность отображения, программа использует pygame.display.set_mode(). Единственный аргумент, который вы передаете этому методу, — это размер экрана, представленный кортежем из двух ширина и высота. В этом случае Pygame создаст экран шириной 800 пикселей и высотой 600 пикселей.
def main_loop(self):
while True:
self._handle_input()
self._process_game_logic()
self._draw()
def _handle_input(self):
pass
def _process_game_logic(self):
pass
def _draw(self):
self.screen.fill((0, 0, 255))
pygame.display.flip()
Функция main_loop() — это игровой цикл. Он содержит три шага для каждого кадра: _handle_input содержит обработку входных данных. _process_game_logic содержит игровую логику. _draw содержит чертеж. В методе _init_pygame() происходит одноразовая инициализация Pygame. Метод делает две вещи: Вызывает pygame.init(). Эта единственная строка кода отвечает за настройку удивительных функций Pygame. Каждый раз, когда мы работаем с Pygame, мы должны вызывать pygame.init() в начале нашей программы, чтобы убедиться, что фреймворк будет работать правильно. Следующая строка устанавливает заголовок программы Pygame с помощью pygame.display.set_caption(). В этом случае надписью будет название вашей игры: Космические приключения. Методы _handle_input() и _process_game_logic() обрабатывают действия игрока и задают игровую логику. Пока они пусты, но в следующей статье мы добавим некоторый код.
Метод _draw() уже имеет некоторый код. Он вызывается каждый кадр, чтобы нарисовать содержимое экрана, и делает это в два этапа: заполняет экран цветом с помощью функции screen.fill(). Метод принимает кортеж с тремя значениями, представляющими три базовых цвета: красный, зеленый и синий. Каждое значение цвета колеблется от 0 до 255, представляя его интенсивность. В этом примере кортеж (0, 0, 255) означает, что цвет будет состоять только из синего, без следов красного или зеленого. Далее обновляет содержимое экрана с помощью pygame.display.flip(). Поскольку ваша игра в конечном итоге будет отображать движущиеся объекты, метод будет вызываться каждый кадр, чтобы обновить дисплей. Из-за чего необходимо заполнять экран цветом каждый кадр, так как метод очистит содержимое, сгенерированное во время предыдущего кадра. Теперь наш код хорошо структурирован и имеет методы с описательными именами. В следующий раз, когда нам нужно будет изменить что-то, связанное с графикой, мы будете знать, что нужно использовать _draw(). Чтобы добавить обработку ввода, вы измените функцию _handle_input() и так далее.
Таким образом мы создали класс, который будет отображать основные игровые объекты и отвечать за логику игры. В следующей статье мы применим его и реализуем обработку пользовательского ввода.
Первая игра на PyGame
Рис 1. Внешний вид игры
Ну а теперь вкратце рассмотрим код игры
Здесь мы импортируем библиотеку PyGame. Именно с её помощью мы создаем игровой экран, выводим изображения на него и даже текст. Строка pygame.init() производит инициализацию библиотеки.
В строке 12 создаем экран размером 800 на 600 пикселей. Сохранив его в переменной screen, в дальнейшем мы сможем изменять некоторые его параметры, такие как иконка и заголовок окна:
В строке 20 мы загружаем изображение биты, размером 64х16 пикселей. В переменных posX и posY указываем текущие координаты мяча. В переменной changeX хранится величина, на которую будет изменятся положение биты во время игры. Так как бита у нас двигается только горизонтально, то и значение смещения только одно.
Здесь мы загружаем изображение мяча. Его стартовые координаты указываем в переменных ballX и ballY. Поскольку мяч у нас движется в двух осях координат, следует указать две переменные смещения, вертикального и горизонтального: changeBallX и changeBallY. Переменная play используется для контроля запуска игры. Чуть нижу будет описано, зачем это нужно.
При каждом прохождении цикла нужно вычислять новые координаты мяча. Это необходимо для того, чтобы отобразить его движение на экране. В зависимости от того, какие действия произошли в игре, координаты ballX и ballY изменяются, что приводит к соответствующему изменению положения мяча.
Здесь мы устанавливаем рамки для мяча, чтобы он не улетел за границу экрана. В строке 90 мы проверяем, запущена ли игра. И если да, то при достижении мячом правой (строка 91) или левой (строка 93) границы экрана, движение мяча на противоположное. Если игра еще не началась, то при достижении правой или левой границ экрана мы останавливаем движение мяча. Это нужно для того, чтобы вы не могли запихнуть мяч за границу экрана до того, как начнется игра.
Теперь проверяем, столкнулся ли мяч с битой. Прежде всего, нужно проверить, идет ли игра (строка 103). Если да, то проверяем, достиг ли мяч нижней границы экрана (строка 104). Если мяч достиг нижней части экрана, проверяем, находится ли под ним бита (строка 105) и если мяч находится над битой, то изменяем его смещение по вертикальной оси на противоположное и добавляем одно очко к счету. Теперь обратим внимание на строку if posX-22 < ballX < posX+64.Если с правой частью выражения все понятно (длина биты) то с правой не совсем. Дело в том, что мяч отрисовывается сверху вниз, слева направо. То есть расчет ведется относительно верхнего левого угла изображения. И posX-22 заменить на posX, То мяч часто будет пролетать сквозь левый край биты, хотя визуально находился над ней. Можете попробовать внести это изменение и наглядно увидеть результат.
Отображаем текущую позицию мяча и счет игры
В строке 125 мы отображаем биту на экране. А в строке 128 обновляем экран, чтобы увидеть внесенные изменения (новый кадр).
Сообщество разработчиков на Python создало тысячи полезных пакетов, которые вы можете включать в свои проекты. В Visual Studio имеется пользовательский интерфейс для управления пакетами в средах Python.
Просмотр окружений
Выберите команду меню Просмотр > Другие окна > Окружения Python. Откроется окно Окружения Python (как узел обозревателя решений), в котором представлены разные среды, доступные вам. Список содержит как окружения, установленные с помощью установщика Visual Studio, так и окружения, которые вы установили отдельно. В их число входят глобальные, виртуальные среды и среды Conda. Среда, выделенная полужирным шрифтом, — это среда, используемая по умолчанию для новых проектов. Дополнительные сведения о работе со окружениями см. в разделе Создание окружений Python и управление ими в средах Visual Studio.
Используйте сочетания клавиш CTRL +K, CTRL +` , чтобы открыть окно Окружения Python из окна Обозревателя решений. Если сочетание клавиш не работает и окно "Окружения Python" отсутствует в меню, возможно, не установлена рабочая нагрузка Python. Инструкции по установке Python см. в статье Установка поддержки Python в Visual Studio в Windows.
Если открыт проект Python, вы можете открыть окно Окружения Python из Обозревателя решений. Щелкните правой кнопкой мыши Окружения Python и выберите пункт Просмотреть все окружения Python.
Теперь создайте проект, выбрав пункт меню Файл > Создать > Проект, а затем выбрав шаблон Приложение Python.
В появившийся файл кода вставьте приведенный ниже код, который строит косинусоиду, как в предыдущих шагах учебника, но теперь в виде графика. Можно также использовать ранее созданный проект и заменить код.
В окне редактора наведите указатель мыши на инструкции импорта numpy и matplotlib . Вы заметите, что они не разрешены. Чтобы разрешить инструкции импорта, установите пакеты в глобальное окружение по умолчанию.
Если в окне редактора навести указатель мыши на операторы импорта numpy и matplotlib , вы заметите, что они не разрешены. Это связано с тем, что пакеты не были установлены в глобальном окружении по умолчанию.
Например, щелкните ссылку Открыть интерактивное окно, и в Visual Studio откроется интерактивное окно для этого окружения.
На вкладке Пакеты в окне "Окружения Python" указаны все пакеты, установленные в настоящий момент в окружении.
Установка пакетов с помощью окна "Окружения Python"
В окне "Окружения Python" выберите окружение по умолчанию для новых проектов Python и перейдите на вкладку Пакеты. Вы увидите список пакетов, которые в настоящее время установлены в окружении.
Установите пакет matplotlib , введя его имя в поле поиска, а затем выбрав параметр Выполнить команду "pip install matplotlib" . При выполнении этой команды будут установлены пакет matplotlib , а также все пакеты, от которых он зависит (в данном случае — numpy ).
Выберите вкладку Пакеты.
Согласитесь на повышение прав, если появится соответствующий запрос.
Установленный пакет появится в окне Окружения Python. Если щелкнуть знак X справа от пакета, он будет удален.
Введите matplotlib в поле поиска для установки matplotlib .
Выберите вариант Выполнить команду: pip install matplotlib. Будет установлен пакет matplotlib , а также все пакеты, от которых он зависит (в данном случае — numpy ).
Согласитесь на повышение прав, если появится соответствующий запрос.
Установленный пакет появится в окне Окружения Python. Если щелкнуть знак X справа от пакета, он будет удален.
Под названием среды может появиться небольшой индикатор выполнения, который указывает на то, что Visual Studio создает базу данных IntelliSense для нового пакета. На вкладке IntelliSense также приводятся более подробные сведения. Имейте в виду, что, пока база данных не будет готова, функции IntelliSense, такие как автозавершение и проверка синтаксиса, будут неактивны для этого пакета в редакторе.
Запуск программы
После установки matplotlib запустите программу с отладчиком (F5) или без него (CTRL+F5), чтобы увидеть результат.
Читайте также: