настройка pycharm для python windows

Создание виртуальных окружений и установка библиотек для Python 3 в IDE PyCharm

Язык программирования Python считается достаточно простым. На нем легче и быстрее пишутся программы, по сравнению с компилируемыми языками программирования. Для Python существует множество библиотек, позволяющих решать практически любые задачи. Есть, конечно, и минусы и другие нюансы, но это отдельная тема.

Довольно часто я вижу, как мои знакомые и друзья начинают изучать Python и сталкиваются с проблемой установки и использования сторонних библиотек. Они могут несколько часов потратить на установку библиотеки, и даже, могут не справиться с этим и забить на неё. В то время как, в большинстве случаев, это можно было сделать за несколько минут.

Статья начинается с базовых вещей: с установки Python 3, инструментов разработки Pip и Virtualenv и среды разработки PyCharm в Windows и в Ubuntu. Для многих это не представляет трудностей и возможно, что уже всё установлено.

После чего будет то, ради чего задумывалась статья, я покажу как в PyCharm создавать и использовать виртуальные окружения и устанавливать в них библиотеки с помощью Pip.

Установка Python и Pip

Pip является менеджером пакетов для Python. Именно с помощью него обычно устанавливаются модули/библиотеки для разработки в виде пакетов. В Windows Pip можно установить через стандартный установщик Python. В Ubuntu Pip ставится отдельно.

Установка Python и Pip в Windows

Для windows заходим на официальную страницу загрузки, где затем переходим на страницу загрузки определенной версии Python. У меня используется Python 3.6.8, из-за того, что LLVM 9 требует установленного Python 3.6.

Во время установки ставим галочку возле Add Python 3.x to PATH и нажимаем Install Now:

Установка Python и Pip в Ubuntu

В Ubuntu установить Python 3 можно через терминал. Запускаем его и вводим команду установки. Вторая команда выводит версию Python.

Далее устанавливаем Pip и обновляем его. После обновления необходимо перезапустить текущую сессию (или перезагрузить компьютер), иначе возникнет ошибка во время вызова Pip.

Основные команды Pip

Рассмотрим основные команды при работе с Pip в командой строке Windows и в терминале Ubuntu.

Установка VirtualEnv и VirtualEnvWrapper

VirtualEnv используется для создания виртуальных окружений для Python программ. Это необходимо для избежания конфликтов, позволяя установить одну версию библиотеки для одной программы, и другу для второй. Всё удобство использования VirtualEnv постигается на практике.

Установка VirtualEnv и VirtualEnvWrapper в Windows

В командной строке выполняем команды:

Установка VirtualEnv и VirtualEnvWrapper в Ubuntu

Для Ubuntu команда установки будет следующей:

После которой в конец

Работа с виртуальным окружением VirtualEnv

Рассмотрим основные команды при работе с VirtualEnv в командой строке Windows и в терминале Ubuntu.

Команда Описание
mkvirtualenv env-name Создаем новое окружение
workon Смотрим список окружений
workon env-name Меняем окружение
deactivate Выходим из окружения
rmvirtualenv env-name Удаляем окружение

Установка PyCharm

PyCharm — интегрированная среда разработки для языка программирования Python. Обладает всеми базовыми вещами необходимых для разработки. В нашем случае огромное значение имеет хорошее взаимодействие PyCharm с VirtualEnv и Pip, чем мы и будем пользоваться.

Установка PyCharm в Windows

Скачиваем установщик PyCharm Community для Windows с официального сайта JetBrains. Если умеете проверять контрольные суммы у скаченных файлов, то не забываем это сделать.

В самой установке ничего особенного нету. По сути только нажимаем на кнопки next, и в завершение на кнопку Install. Единственно, можно убрать версию из имени папки установки, т.к. PyCharm постоянно обновляется и указанная версия в будущем станет не правильной.

Установка PyCharm в Ubuntu

Скачиваем установщик PyCharm Community для Linux с официального сайта JetBrains. Очень хорошей практикой является проверка контрольных сумм, так что если умеете, не ленитесь с проверкой.

Теперь в директории

Далее выполняем команды в терминале:

Производим установку. И очень важно в конце не забыть создать desktop файл для запуска PyCharm. Для этого в Окне приветствия в нижнем правом углу нажимаем на ConfigureCreate Desktop Entry.

Установка PyCharm в Ubuntu из snap-пакета

PyCharm теперь можно устанавливать из snap-пакета. Если вы используете Ubuntu 16.04 или более позднюю версию, можете установить PyCharm из командной строки.

Использование VirtualEnv и Pip в PyCharm

Поддержка Pip и Virtualenv в PyCharm появилась уже довольно давно. Иногда конечно возникают проблемы, но взаимодействие работает в основном стабильно.

Рассмотрим два варианта работы с виртуальными окружениями:

Первый пример: использование собственного виртуального окружения для проекта

Создадим программу, генерирующую изображение с тремя графиками нормального распределения Гаусса Для этого будут использоваться библиотеки matplotlib и numpy, которые будут установлены в специальное созданное виртуальное окружение для программы.

Запускаем PyCharm и окне приветствия выбираем Create New Project.

В мастере создания проекта, указываем в поле Location путь расположения создаваемого проекта. Имя конечной директории также является именем проекта. В примере директория называется ‘first_program’.

Теперь установим библиотеки, которые будем использовать в программе. С помощью главного меню переходим в настройки FileSettings. Где переходим в Project: project_nameProject Interpreter.

Здесь мы видим таблицу со списком установленных пакетов. В начале установлено только два пакета: pip и setuptools.

Справа от таблицы имеется панель управления с четырьмя кнопками:

Для добавления (установки) библиотеки в окружение нажимаем на плюс. В поле поиска вводим название библиотеки. В данном примере будем устанавливать matplotlib. Дополнительно, через Specify version можно указать версию устанавливаемого пакета и через Options указать параметры. Сейчас для matplotlib нет необходимости в дополнительных параметрах. Для установки нажимаем Install Package.

После установки закрываем окно добавления пакетов в проект и видим, что в окружение проекта добавился пакет matplotlib с его зависимостями. В том, числе был установлен пакет с библиотекой numpy. Выходим из настроек.

Теперь мы можем создать файл с кодом в проекте, например, first.py. Код программы имеет следующий вид:

Далее указываем в поле Name имя конфигурации и в поле Script path расположение Python файла с кодом программы. Остальные параметры не трогаем. В завершение нажимаем на Apply, затем на OK.

Теперь можно выполнить программу и в директории с программой появится файл gauss.png :

Второй пример: использование предварительно созданного виртуального окружения

Данный пример можно использовать во время изучения работы с библиотекой. Например, изучаем PySide2 и нам придется создать множество проектов. Создание для каждого проекта отдельного окружения довольно накладно. Это нужно каждый раз скачивать пакеты, также свободное место на локальных дисках ограничено.

Более практично заранее подготовить окружение с установленными нужными библиотеками. И во время создания проектов использовать это окружение.

В этом примере мы создадим виртуальное окружения PySide2, куда установим данную библиотеку. Затем создадим программу, использующую библиотеку PySide2 из предварительно созданного виртуального окружения. Программа будет показывать метку, отображающую версию установленной библиотеки PySide2.

Далее в созданном окружении устанавливаем пакет с библиотекой PySide2, также как мы устанавливали matplotlib. И выходим из настроек.

Теперь мы можем создавать новый проект использующий библиотеку PySide2. В окне приветствия выбираем Create New Project.

Для проверки работы библиотеки создаем файл second.py со следующий кодом:

Далее создаем конфигурацию запуска программы, также как создавали для первого примера. После чего можно выполнить программу.

Заключение

У меня нет богатого опыта программирования на Python. И я не знаком с другими IDE для Python. Поэтому, возможно, данные IDE также умеют работать с Pip и Virtualenv. Использовать Pip и Virtualenv можно в командой строке или в терминале. Установка библиотеки через Pip может завершиться ошибкой. Есть способы установки библиотек без Pip. Также создавать виртуальные окружения можно не только с помощью Virtualenv.

В общем, я лишь поделился небольшой частью опыта из данной области. Но, если не вдаваться в глубокие дебри, то этого вполне достаточно знать, чтобы писать простые программы на Python с использованием сторонних библиотек.

Источник

Configure a Python interpreter

Python interpreters in PyCharm

Python interpreters can be configured for a new project or for the current project (you can create a new interpreter or use one of the existing interpreters).

Setting an existing Python interpreter

Change the Python interpreter using the Python Interpreter selector

The Python Interpreter selector is located on the status bar. It is the most convenient and quickest way to switch the Python interpreter. Just click it and select the target interpreter:

Change the Python interpreter in the project settings

Press Ctrl+Alt+S to open the IDE settings and select Project

Select the target interpreter.

When PyCharm stops supporting any of the outdated Python versions, the corresponding Python interpreter is marked as unsupported.

When you change an SSH interpreter, you might need to synchronize local content with the target server. Mind a notification balloon in the lower-right corner. You can click one of the links to perform the following actions:

Auto-upload files to the server

Synchronize files and then enable auto-uploading

Modify a Python interpreter

Press Ctrl+Alt+S to open the IDE settings and select Project

You can specify an alternative interpreter name for the selected interpreter. The Python interpreter name specified in the Name field, becomes visible in the list of available interpreters. Click OK to apply the changes.

For remote interpreters (that are available in PyCharm Professional ) you can modify configuration parameters.

Creating a new Python interpreter

To add a new interpreter to the current project:

Do one of the following:

Press Ctrl+Alt+S to open the project Settings/Preferences and go to Project

Choose the interpreter type to add and perform the specific settings:

Note that SSH, WSL, Vagrant, Docker, and Docker Compose are available only for the commercial version of PyCharm. WSL is Windows specific.

If New environment is selected:

If PyCharm detects no Python on your machine, it provides two options: to download the latest Python versions from python.org or to specify a path to the Python executable (in case of non-standard installation).

Select the Make available to all projects checkbox if you want to reuse this environment when creating Python interpreters in PyCharm.

If Existing environment is selected:

Select the Make available to all projects checkbox if you want to reuse this environment when creating Python interpreters in PyCharm.

Click OK to complete the task.

If you have added the user base’s binary directory to your PATH environmental variable, you don’t need to set any additional options: the path to the pipenv executable will be autodetected.

Click OK to complete the task.

Click OK to save the changes and complete the task.

If New environment is selected:

Select the Python version from the list.

Select the Make available to all projects checkbox if you want to reuse this environment when creating Python interpreters in PyCharm.

If Existing environment is selected:

Select the Make available to all projects checkbox if you want to reuse this environment when creating Python interpreters in PyCharm.

Click OK to complete the task.

If PyCharm detects no Python on your machine, it provides two options: to download the latest Python versions from python.org or to specify a path to the Python executable (in case of non-standard installation).

You will need admin privileges to install, remove, and upgrade packages for the system interpreter. When attempting to install an interpreter package through an intention action, you might receive the following error message: As prompted, consider using a virtual environment for your project.

Click OK to complete the task.

In the next dialog window, provide the authentication details to connect to the target server.

Select Password or Key pair (OpenSSL or PuTTY) and enter your password or passphrase. If Key pair (OpenSSL or PuTTY) is selected, specify:

Private key file : location of the file with a private key

Passphrase : similar to a password, it serves to encrypt the private key.

The RFC 4716 format for OpenSSH keys is not supported by PyCharm. See the workaround.

Click Next to proceed with the final configuration step.

You can also select the lowest checkbox to enable automatic upload of the local changes to the remote server.

In the left-hand pane of the Add Python Interpreter dialog, click Vagrant :

This results in showing the link to Vagrant host URL.

The Python interpreter path field displays the path to the desired Python executable. You can accept default, or specify a different one.

Select the Linux distribution and specify the path to the python executable in the selected Linux distribution. Typically, you should be looking for wsl.exe but you can specify any non default WSL distro.

Python interpreter path should have the default value:

Click OK to complete the task.

In the dialog that opens, select the Docker Compose option, from the drop-down lists select the Docker server, Docker Compose service (here web ), configuration file (here docker-compose.yml ) and Python interpreter path (here python ).

Next, wait while PyCharm starts your Docker Compose configuration to scan and index:

Click OK to complete the task.

When a remote Python interpreter is added, at first the PyCharm helpers are copied to the remote host. PyCharm helpers are needed to run remotely the packaging tasks, debugger, tests and other PyCharm features. Next, the skeletons for binary libraries are generated and copied locally. Also all the Python library sources are collected from the Python paths on a remote host and copied locally along with the generated skeletons. Storing skeletons and all Python library sources locally is required for resolve and completion to work correctly. PyCharm checks remote helpers version on every remote run, so if you update your PyCharm version, the new helpers will be uploaded automatically and you don’t need to recreate remote interpreter. SFTP support is required for copying helpers to the server.

Setting the default interpreter

In PyCharm, you can specify an interpreter that will be automatically set for all newly created projects.

From the main menu, select File | New Projects Setup | Settings for New Projects (on Window and Linux) or File | New Projects Setup | Preferences for New Projects (on macOS).

The change will become effective for all newly created projects in PyCharm.

Managing interpreter packages

For each interpreter, you can install, upgrade, and delete Python packages. By default, PyCharm uses pip to manage project packages. For Conda environments you can use the Conda package manager.

Источник

PyCharm: пошаговая инструкция по установке IDE для изучения Python (Урок №3)

Прежде чем перейти к изучению основ Python, неплохо-бы установить специальную программу для написания кода. Можно, конечно, писать программы в обычном блокноте, но так никто не делает.

Для удобного написания кода предназначены специальные программы, которые существенно облегчают этот процесс.

Они помогают быстрее найти ошибки в коде, дают автоматические подсказки, выделяют цветом синтаксис. И многое-многое другое.

Для написания кода на языке Python сейчас существует огромное количество программ.

Например:

Что выбрать — решать вам. Но в настоящее время огромное количество разработчиков на языке Python пишут программы в PyCharm.

Можно сказать, что именно PyCharm стала стандартом для работы с Python.

Если хотите знать мое мнение, то лучше сразу привыкать к PyCharm (но можете выбрать и другой редактор кода).

Но мы сегодня установим именно PyCharm в операционной системе Windows (кстати, PyCharm можно установить и в Linux).

Можете посмотреть видео ниже, или почитать текстовую инструкцию по установке PyCharm, которая находится ниже.

Не забудьте подписаться на мой Youtube-канал.

Как установить PyCharm?

Идем на официальный сайт разработчика по этой ссылке:

и видим два варианта PyCharm для скачивания

Бесплатной версии Community более чем достаточно, для начала изучения Python

Значит, будем устанавливать именно ее:

Нажимаем на кнопку Download и скачиваем установочный файл (примерно 300 мегабайт).

Далее все просто. Устанавливаем PyCharm как и любую-другую программу для Windows.

Дважды кликаем по установочному файлу и приступаем к установке:

Видим экран приветствия:

На следующем шаге можно изменить место установки PyCharm.

Я оставил место установки программы без изменений, и нажал на кнопку Next.

На следующем шаге достаточно поставить «галочку» для того, чтобы создать ярлык запуска программы на рабочем столе компьютера (см. рисунок ниже).

И нажимаем, как нетрудно догадаться, кнопку «Next» =)

На следующем шаге ничего не трогаем, и нажимаем на кнопку «Install».

Пошел процесс установки:

Установка PyCharm успешно завершена:

Жмем на кнопку «Finish».

Если хотите, чтобы программа сразу запустилась, то поставьте «галочку», напротив пункта «Run PyCharm».

Или просто запустите при помощи ярлыка, который уже есть на рабочем столе.

Первое, что мы увидим после запуска — это политика конфиденциальности. Придется с ней согласиться:

На следующем шаге нам будет предложено поделиться анонимной статистикой использования программы:

Этот выбор — на ваше усмотрение.

И, наконец, выбираем тему оформления:

Подозреваю, что большинство выберет темную тему =)

На следующем шаге нам будет предложено создать первый проект.

Жмем на кнопку «New Project» и создаем первый проект.

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

Я создал проект urokipython на диске D. Понятно, что вы можете выбрать любое другое расположением на вашем компьютере.

Нажимаем на кнопку «Create».

Все, мы с вами установили PyCharmи и создали первый проект.

Источник

Работа в IDE PyCharm (FAQ) + полезные фишки

Талантливые ребята из JetBrains разработали одну из наиболее используемых IDE в мире для этого языка программирования.

В начале 2019 года компания JetBrains опросила почти 7000 разработчиков. 42% опрошенных, которые пишут на Python, выбрали PyCharm как основную IDE для своей работы.

PyCharm кроссплатформенна и совместима с Windows, Linux и MacOS. Она поддерживает, как вторую, так и третью версию Питона и, кроме всего прочего, имеет красивый и функциональный UI.

Инструменты и функции, предоставляемые этой интегрированной средой, помогают Python-программистам быстро и эффективно писать код, синхронизироваться с системой контроля версий, использовать фреймворки и плагины, позволяя при этом настроить интерфейс так, как удобно самому пользователю и даже дают возможность дополнительного расширения IDE.

В PyCharm, конечно же, есть встроенный анализатор кода, который действительно помогает при его написании. Благодаря анализатору можно весьма комфортно перемещаться по проекту, использовать быстрый поиск, а также исправлять ошибки, которые PyCharm любезно подсвечивает и подробно описывает.

Тут реализованы системы автодополнения и контроля качества кода в соответствии со стандартом PEP8. Всё для того, чтобы сделать текст ваших программ красивее, чище и структурированнее.

В интегрированной среде от JetBrains поддерживаются основные современные Python-фреймворки для веб-разработки, в ней вы сможете работать с Jupyter-notebook, подключать Anaconda, а также прочие библиотеки для научных вычислений и Data Science. Но, как говорится — «И это ещё не всё!». Помимо, собственно, питона, PyCharm отлично ладит и с другими языками программирования — JS, TypeScript-а, SQL или шаблонизаторами.

Системные требования

Официальные системные требования последней версии PyCharm выглядят так:

RAM: не менее 2 ГБ, но рекомендуется 8 ГБ;

Место на диске: установка потребует 2,5 ГБ, рекомендуется использование SSD;

Разрешение экрана : не менее 1024×768 пикселей;

Python: Python 2.7, Python 3.5 или более поздняя версия;

При этом разработчики обращают внимание пользователей macOS и Linux на то, что JBR 11 поставляется в комплекте с PyCharm, и дополнительно устанавливать Java им не нужно.

В самих системных требованиях нет ничего особенного, однако хочется отметить, что IDE прекрасно себя чувствует и на Windows 7, а к рекомендациям по поводу 8 ГБ оперативной памяти и использования SSD стоит тщательным образом прислушаться, не прогадаете 😉.

Как установить

Процесс установки вкратце описан на официальном сайте для каждой из поддерживаемых ОС:

На Windows

На Mac OS

На Linux

Подготовка к работе и настройка

Перед тем, как приступить к разработке в PyCharm, вам нужно создать проект, поскольку все дальнейшие манипуляции будут происходить именно в нём и на его основе.

Чтобы начать новый проект, нажмите New Project и придумайте ему имя. Теперь можно приступить к настройке.

Настройки интерфейса

Несмотря на то, что разработчики из JetBrains начинали свой путь в России, смена языка интерфейса в среде разработки не предусмотрена, поэтому к вашим услугам будет лишь родной язык Уильяма Шекспира.

Зато вы можете изменить сами шрифты и их размеры, пройдя по пути:

Поменять цветовую схему UI:

И сконфигурировать множество других аспектов, вроде общих настроек, конфигураций прокрутки, настроек цвета для каждого доступного языка и так далее. Для всего этого есть редактор:

Настройка интерпретатора

Для использования установленного интерпретатора, выберите его в настройках:

💭 Если PyСharm не видит интерпретатор, попробуйте добавить его вручную. Для этого:

Настройка виртуального окружения

Если по долгу программистской службы вам приходится работать с несколькими проектами, то определенно не помешает настройка и подключение виртуального окружения.

Venv — это, грубо говоря, директория, содержащая ссылку на интерпретатор и набор установленных библиотек. Виртуальное окружение “изолирует” ваши проекты, и помогает, в частности, не запутаться в разных версиях библиотек, адаптированных для каждого из них по отдельности.

Если вы настроили виртуальное окружение заранее, PyCharm покажет уведомление, в котором предложит использовать его в проекте. Если уведомления нет, вы всегда можете настроить и изменить его вручную в настройках:

Также в этом меню можно создать виртуальные окружения с нуля. Для этого:

Venv создано и готово к работе 👌.

Окружение Pipenv создается аналогичным образом

Запуск скриптов в консоли

Чтобы запустить код в PyCharm, нужно выбрать интерпретатор в настройках (как это сделать я писал чуть выше).

Также, перед запуском своего кода в PyCharm необходимо добавить конфигурацию (чтобы IDE понимал, какой файл ему запускать и по каким правилам). Изначально, если проект новый, конфигурации нет, и кнопка запуска не активна.

Чтобы запустить код в новом проекте, зайдите в

или выполните комбинацию:

Откроется диалоговое окно в выбором файла, который необходимо запустить.

После запуска, откроется терминал, в котором вы увидите результат выполнения своего скрипта и сообщение о том, что процесс завершился с кодом 0 (0 означает успешное завершение).

Далее, когда конфигурация создана и сохранена, запускать свой код на выполнения можно комбинацией:

☝️ Если скрипт не запускается, возможно вы не сохранили конфигурацию или PyCharm не видит интерпретатор. Настроить или создать конфигурацию можно в меню » Edit Configurations.. «, которое находится сверху справа, около кнопки «Run».

Есть еще один способ запуска кода:

💁‍♂️ В целях обучение, вам может понадобиться быстро писать и проверять Python-инструкции. Для этого в PyCharm-е реализован интерактивный режим (по аналогии с IDLE ). Чтобы его вызвать, достаточно нажать на » Python Conole » внизу слева.

Отладчик (debugger) в Pycharm

Отладка — чрезвычайно полезный инструмент. С помощью него можно пошагово исполнять программный код. Интерпретатор переходит в особый режим, фиксируя на каждом этапе выполнения текущее состояние программы. Т.е. для каждой строки кода вам будет представлен мини-отчёт, в котором можно посмотреть актуальные значения всех переменных и проследить таким образом весь процесс их изменения.

Находясь в руках опытного разработчика, отладчик сокращает время поиска ошибок на порядки.

Для старта отладки, нужно поставить так называемую точку останова. Это красный кружок напротив строки кода.

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

Для запуска кода в режиме отладки нажмите на значок в «жука» в левом верхнем углу:

Или выполните комбинацию:

Все варианты навигации в режиме отладки можно посмотреть в окне «Debugger»:

Для каждой кнопки существует свой hotkey — чтобы увидеть его, достаточно навести курсор на нужную кнопку.

Deploy на удаленный хост

Развернуть и отправить код на сервер возможно прямиком из PyCharm.

Инструмент не доступен в бесплатной комьюнити-версии

Чтобы добавить удалённый сервер, первым делом перейдём в:

Теперь можно производить deploy:

Макросы

Макросы, как и многие другие вещи нужны исключительно для облегчения нашей с вами жизни. Они позволяют автоматизировать ряд повторяющихся процедур, которые вы чаще всего выполняете во время написания кода. Вы можете записывать, редактировать и воспроизводить макросы, назначать им ярлыки и даже делиться ими.

Чтобы создать или настроить свой собственный макрос, вам нужно выбрать:

Полезные хоткеи и фишки

⚡ Как поменять цвет консоли в pycharm. Поменять цвет консольного бэкграунда или шрифтов предельно просто: для этого нужно всего лишь зайти в настройки цветовой схемы и изменить их так, как того пожелает ваш внутренний дизайнер:

⚡ Поиск по всему проекту.

⚡ Хоткеи по запуску и дебаггингу. С помощью комбинации клавиш Shift + F10 можно запустить ваш проект, а нажав Shift + F9 — начать его отладку.

Повторив то же самое действие на том же самом месте, вы выполните раскомментирование кода.

⚡ Некоторые горячие клавиши.

ТОП 7 полезных плагинов для Pycharm

Меню установки плагинов находится в:

Для установки плагина достаточно написать его название в строке поиска, найти плагин и нажать » Install «.

⭐ Вот список полезных плагинов, которые стоит установить:

Другие полезные плагины:

Что делать, если PyCharm не видит модули Python?

Если у вас возникла подобная проблема, то в первую очередь стоит проверить настройки интерпретатора.

Вариант №1 — сброс настроек и выборе новой версии интерпретатора. Настройки находятся тут:

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • настройка pycharm для python mac os
  • настройка pxe сервера windows
  • настройка putty для windows 10
  • настройка punto switcher mac os big sur
  • настройка proxychains kali linux

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии