Как подключить модуль math в python visual studio

Обновлено: 05.07.2024

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

Библиотека является встроенным модулем Python, поэтому вам не нужно выполнять установку, чтобы использовать ее. В этой статье мы покажем пример использования наиболее часто используемых функций и констант математической библиотеки Python.

Специальные константы

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

Первая – это Pie (π), очень популярная математическая константа. Он обозначает отношение длины окружности к диаметру круга и имеет значение 3,141592653589793. Чтобы получить к нему доступ, мы сначала импортируем математическую библиотеку следующим образом:

Затем мы можем получить доступ к этой константе с помощью pi:

Вы можете использовать эту константу для вычисления площади или длины окружности. Следующий пример демонстрирует это:

Мы увеличили значение радиуса до степени 2, а затем умножили его на круговую диаграмму в соответствии с формулой площади πr 2 .

Число Эйлера

Число Эйлера (e), являющееся основанием натурального логарифма, также определено в библиотеке Math. Мы можем получить к нему доступ следующим образом:

В следующем примере показано, как использовать указанную выше константу:

Показатели и логарифмы

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

Функция exp()

Математическая библиотека в Python поставляется с функцией exp(), которую мы можем использовать для вычисления степени e. Например, e x , что означает экспоненту от x. Значение e составляет 2,718281828459045.

Метод можно использовать со следующим синтаксисом:

Параметр x может быть положительным или отрицательным числом. Если x не является числом, метод вернет ошибку. Продемонстрируем использование этого метода на примере:

Мы объявили три переменные и присвоили им значения с разными числовыми типами данных. Затем мы передали их методу exp() для вычисления их показателей.

Мы также можем применить этот метод к встроенным константам, как показано ниже:

Если вы передадите методу нечисловое значение, он выдаст ошибку, как показано здесь:

Ошибка TypeError была сгенерирована, как показано в приведенных выше выходных данных.

Функция log()

Эта функция возвращает логарифм указанного числа. Натуральный логарифм вычисляется по основанию e. Следующий пример демонстрирует использование этой функции:

В приведенном выше скрипте мы передали методу числовые значения с разными типами данных. Мы также вычислили натуральный логарифм константы пи. Результат выглядит так:

Функция log10()

Этот метод возвращает десятичный логарифм указанного числа. Например:

Функция log2()

Эта функция вычисляет логарифм числа по основанию 2. Например:

Функция log (x, y)

Эта функция возвращает логарифм x, где y является основанием. Например:

Функция log1p (x)

Эта функция вычисляет логарифм (1 + x), как показано здесь:

Арифметические функции

  • ceil(): возвращает максимальное значение указанного числа.
  • fabs(): возвращает абсолютное значение указанного числа.
  • floor(): возвращает минимальное значение указанного числа.
  • gcd (a, b): возвращает наибольший общий делитель a и b.
  • fsum (iterable): возвращает сумму всех элементов в повторяемом объекте.
  • expm1(): возвращает (e ^ x) -1.
  • exp (x) -1: когда значение x мало, вычисление exp (x) -1 может привести к значительной потере точности. Expm1 (x) может возвращать результат с полной точностью.

Следующий пример демонстрирует использование вышеуказанных функций:

  • pow(): принимает два аргумента с плавающей запятой, переводит первый аргумент во второй и возвращает результат. Например, pow (2,2) эквивалентно 2 ** 2.
  • sqrt(): возвращает квадратный корень указанного числа.

Эти методы можно использовать, как показано ниже:

Тригонометрические функции

Рассмотрим следующий пример:

Обратите внимание, что мы сначала преобразовали значение угла из градусов в радианы перед выполнением других операций.

Преобразование типов

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

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

Однако иногда вам необходимо явно привести число от одного типа к другому, чтобы удовлетворить требованиям параметра функции или оператора. Это можно сделать с помощью различных встроенных функций Python. Например, чтобы преобразовать целое число в число с плавающей запятой, мы должны вызвать функцию float(), как показано ниже:

Целое число преобразовано в число с плавающей запятой. Число с плавающей запятой можно преобразовать в целое число следующим образом:

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

Заключение

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

Библиотека устанавливается на Python, поэтому вам не требуется выполнять дополнительную установку, чтобы использовать ее. Для получения дополнительной информации вы можете найти здесь официальную документацию.

P ython библиотека math содержит наиболее применяемые математические функции и константы. Все вычисления происходят на множестве вещественных чисел.

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

Синтаксис и подключение

Чтобы подключить модуль, необходимо в начале программы прописать следующую инструкцию:

Теперь с помощью точечной нотации можно обращаться к константам и вызывать функции этой библиотеки. Например, так:

Константы модуля Math

math.pi Представление математической константы π = 3.141592…. "Пи" — это отношение длины окружности к её диаметру.

math.e Число Эйлера или просто e . Иррациональное число, которое приблизительно равно 2,71828.

math.tau Число τ — это отношение длины окружности к её радиусу. Т.е

import math > print(math.tau) print(math.tau == 2 * math.pi) > True

math.inf Положительная бесконечность.

Для оперирования отрицательной бесконечно большой величиной, используйте -math.inf

Константа math.inf эквивалента выражению float("inf") .

math.nan NaN означает — "не число".

Аналогичная запись: float("nan") .

Список функций

Теоретико-числовые функции и функции представления

math.ceil() Функция округляет аргумент до большего целого числа.

Решим задачу : На столе лежат шесть рубинов. Сколько существует способов выбрать два из них?

💭 Можете подставить числа в формулу, и самостоятельно проверить правильность решения.

math.copysign() Функция принимает два аргумента. Возвращает первый аргумент, но со знаком второго.

print(math.copysign(-6, 2)) > 6.0

math.fabs() Функция возвращает абсолютное значение аргумента:

math.floor() Антагонист функции ceil() . Округляет число до ближайшего целого, но в меньшую сторону.

math.fmod(a, b) Считает остаток от деления a на b . Является аналогом оператора " % " с точностью до типа возвращаемого значения.

print(math.fmod(75, 4)) > 3.0

math.frexp(num) Возвращает кортеж из мантиссы и экспоненты аргумента. Формула:

, где M — мантисса, E — экспонента.

math.fsum() Вычисляет сумму элементов итерируемого объекта. Например, вот так она работает для списка:

summable_list = [1, 2, 3, 4, 5] print(math.fsum(summable_list)) > 15.0

math.gcd(a, b) Возвращает наибольший общий делитель a и b . НОД — это самое большое число, на которое a и b делятся без остатка.

a = 5 b = 15 print(math.gcd(a, b)) > 5

math.isclose(x, y) Функция возвращает True , если значения чисел x и y близки друг к другу, и False в ином случае. Помимо пары чисел принимает ещё два необязательных именованных аргумента:

  • rel_tol — максимально допустимая разница между числами в процентах;
  • abs_tol — минимально допустимая разница.

math.isfinite() Проверяет, является ли аргумент NaN , False или же бесконечностью. True , если не является, False — в противном случае.

math.isinf() True , если аргумент — положительная/отрицательная бесконечность. False — в любом другом случае.

not_inf = 42 inf = math.inf print(math.isinf(not_inf)) > False print(math.isinf(inf)) > True

math.isnan() Возврат True , если аргумент — не число ( nan ). Иначе — False .

not_nan = 0 nan = math.nan print(math.isnan(not_nan)) > False print(math.isnan(nan)) > True

math.isqrt() Возвращает целочисленный квадратный корень аргумента, округлённый вниз.

math.ldexp(x, i) Функция возвращает значение по формуле:

возвращаемое значение = x * (2 ** i) print(math.ldexp(3, 2)) > 12.0

math.modf() Результат работы modf() — это кортеж из двух значений:

  1. Дробная часть аргумента;
  2. Целая часть аргумента;

math.perm(n, k) Возвращает число размещений из n по k . Формула:

Задача : Посчитать количество вариантов распределения трёх билетов на концерт Стаса Михайлова для пяти фанатов.

print(math.perm(5, 3)) > 60

Целых 60 способов! Главное — не запутаться в них, и не пропустить концерт любимого исполнителя!

math.prod() Принимает итерируемый объект. Возвращает произведение элементов.

multiple_list = [2, 3, 4] print(math.prod(multiple_list)) > 24

math.remainder(m, n) Возвращает результат по формуле:

Результат = m – x * n,

где x — ближайшее целое к выражению m/n число.

print(math.remainder(55, 6)) > 1.0 print(math.remainder(4, 6)) > -2.0

math.trunc() trunc() вернёт вам целую часть переданного в неё аргумента.

Степенные и логарифмические функции

math.exp(x) Возвращает e в степени x . Более точный аналог pow(math.e, x) .

math.expm1(x) Вычисляет значение выражения exp(x) - 1 и возвращает результат.

print(math.expm1(3)) > 19.085536923187668 print(math.expm1(3) == (math.exp(3) - 1)) > True

math.log() Функция работает, как с одним, так и с двумя параметрами .

1 аргумент: вернёт значение натурального логарифма (основание e ):

2 аргумента: вернёт значение логарифма по основанию, заданному во втором аргументе:

print(math.log(16, 4)) > 2.0

☝️ Помните, это читается, как простой вопрос: "в какую степень нужно возвести число 4 , чтобы получить 16 ". Ответ, очевидно, 2 . Функция log() с нами согласна.

math.log1p() Это натуральный логарифм от аргумента (1 + x) :

print(math.log(5) == math.log1p(4)) > True

math.log2() Логарифм по основанию 2 . Работает точнее, чем math.log(x, 2) .

math.log10() Логарифм по основанию 10 . Работает точнее, чем math.log(x, 10) .

math.pow(a, b) Функция выполняет возведение числа a в степень b и возвращает затем вещественный результат.

Возведение в степень в Python

math.sqrt() Возврат квадратного корня из аргумента

Как извлечь корень в Python?

Тригонометрические функции

math.acos() Функция возвращает арккосинус в радианах:

math.asin() Возврат арксинуса (угол в радианах):

math.atan2(y, x) Функция принимает на вход два аргумента и возвращает арктангенс y/x . Значение будет в радианах. atan2() учитывает четверть, в которой находится точка (x, y) .

print(math.atan2(-12, 13)) > -0.7454194762741583

math.cos() Косинус угла, который следует указывать в радианах:

math.dist(p, q) Функция возвращает значение евклидова расстояния между точками p и q . У точек должны совпадать измерения. В прямоугольной системе координат dist(p, q) эквивалентна следующей формуле:

math.hypot(x, y) Возвращает длину вектора от начала координат до точки, заданной координатами. Иначе — функция вычисляет гипотенузу треугольника c катетами x и y .

print(math.hypot(3, 4)) > 5.0

math.sin() Функция вернёт синус угла. Угол следует задавать в радианах:

math.tan() Тангенс угла. Аргумент указываем в радианах.

Угловые преобразования

math.degrees() Функция переводит радианное значение угла в градусы.

math.radians() Наоборот: из градусов — в радианы.

Гиперболические функции

Гиперболические функции являются аналогами тригонометрических и тесно с ними связаны. Но тригонометрические функции основаны на окружностях, а гиперболические, соответственно, на гиперболах.

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

Модулем в Python называется любой файл с программой (да-да, все те программы, которые вы писали, можно назвать модулями). В этой статье мы поговорим о том, как создать модуль, и как подключить модуль, из стандартной библиотеки или написанный вами.

Каждая программа может импортировать модуль и получить доступ к его классам, функциям и объектам. Нужно заметить, что модуль может быть написан не только на Python, а например, на C или C++.

Подключение модуля из стандартной библиотеки

Подключить модуль можно с помощью инструкции import. К примеру, подключим модуль os для получения текущей директории:

После ключевого слова import указывается название модуля. Одной инструкцией можно подключить несколько модулей, хотя этого не рекомендуется делать, так как это снижает читаемость кода. Импортируем модули time и random.

После импортирования модуля его название становится переменной, через которую можно получить доступ к атрибутам модуля. Например, можно обратиться к константе e, расположенной в модуле math:

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

Использование псевдонимов

Если название модуля слишком длинное, или оно вам не нравится по каким-то другим причинам, то для него можно создать псевдоним, с помощью ключевого слова as.

Теперь доступ ко всем атрибутам модуля math осуществляется только с помощью переменной m, а переменной math в этой программе уже не будет (если, конечно, вы после этого не напишете import math, тогда модуль будет доступен как под именем m, так и под именем math).

Инструкция from

Подключить определенные атрибуты модуля можно с помощью инструкции from. Она имеет несколько форматов:

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

Импортируемые атрибуты можно разместить на нескольких строках, если их много, для лучшей читаемости кода:

Второй формат инструкции from позволяет подключить все (точнее, почти все) переменные из модуля. Для примера импортируем все атрибуты из модуля sys:

Следует заметить, что не все атрибуты будут импортированы. Если в модуле определена переменная __all__ (список атрибутов, которые могут быть подключены), то будут подключены только атрибуты из этого списка. Если переменная __all__ не определена, то будут подключены все атрибуты, не начинающиеся с нижнего подчёркивания. Кроме того, необходимо учитывать, что импортирование всех атрибутов из модуля может нарушить пространство имен главной программы, так как переменные, имеющие одинаковые имена, будут перезаписаны.

Создание своего модуля на Python

Теперь пришло время создать свой модуль. Создадим файл mymodule.py, в которой определим какие-нибудь функции:

Теперь в этой же папке создадим другой файл, например, main.py:

Поздравляю! Вы сделали свой модуль! Напоследок отвечу ещё на пару вопросов, связанных с созданием модулей:

Как назвать модуль?

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

Python + Visual Studio Code = успешная разработка

VS Code от Microsoft – легкий и удобный редактор кода, доступный на всех платформах и невероятно гибкий. Это отличный выбор для программирования на Python.

В этой статье мы рассмотрим способы установки и настройки максимально эффективной рабочей среды для разработки.

Статья предназначена для программистов, уже имеющих опыт работы с Python и установивших на свою рабочую машину интерпретатор этого языка программирования (Python 2.7, Python 3.6/3.7, Anaconda или другой дистрибутив).

Установка Python – дело несложное: здесь вы найдете подробное пошаговое руководство для всех популярных ОС. Помните, что в разных операционных системах интерфейс VS Code может немного различаться.

Установка и настройка Visual Studio Code для разработки на Python

Сразу же отметим, что VS Code не имеет практически ничего общего с его знаменитым тезкой Visual Studio.

Редактор очень легко установить на любую платформу: на официальном сайте есть подробные инструкции для Windows, Mac и Linux.


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


VS Code + Python

С 2018 года есть расширение для Python. Наблюдать за развитием отношений этой пары можно в блоге Microsoft.

Основные возможности редактора:

  • Поддержка Python 3.4 и выше, а также Python 2.7
  • Автоматическое дополнение кода с помощью IntelliSense
  • Автоматическое использование conda и виртуальных сред
  • Редактирование кода в средах Jupyter и Jupyter Notebooks


А вот пара полезных подборок для прокачки Python-скиллов:

В редакторе есть и полезные фичи, не связанные напрямую с языком:

    для Atom, Sublime Text, Emacs, Vim, PyCharm и множества других редакторов
  • Настраиваемые темы оформления для множества языков, включая русский

И еще несколько крутых возможностей для полного счастья:

    – множество полезных функций Git прямо в редакторе, включая аннотации blame и просмотр репозитория.
  1. Автосохранение (File - Auto Save) и удобная настройка его задержки. между различными устройствами с помощью GitHub.
  2. Удобная работа с Docker.

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

Найдите расширение Python и установите его, чтобы продолжить настройку редактора.

Файлы конфигурации

В Visual Studio Code вы легко можете настроить все под себя. Здесь есть параметры пользователя, которые являются глобальными, и параметры рабочей области – локальные для конкретных папок или проектов. Локальные настройки сохраняются в виде .json-файлов в папке .vscode.

Новый проект на Python

Чтобы открыть новый файл, нужно зайти в меню Файл и выбрать пункт Создать или нажать горячую комбинацию клавиш Ctrl+N .

Еще в редакторе есть полезная палитра команд, которую можно вызвать сочетанием Ctrl+Shift+P . Для создания нового файла введите в появившемся поле File: New File и нажмите Enter .

Какой бы способ вы ни выбрали, перед вами должно открыться вот такое окно:


Здесь уже можно вводить код вашей программы.

Начинаем кодить

Для демонстрации возможностей редактора напишем "Решето Эратосфена" – известный алгоритм для нахождения простых чисел до некоторого предела. Начнем кодить:

На экране это будет выглядеть примерно так:


Подождите, что-то не так. Почему-то VS Code не выделяет ключевые слова языка, не дополняет, не форматирует и вообще ничего полезного не делает. Зачем он вообще такой нужен?

Без паники! Просто сейчас редактор не знает, с каким файлом он имеет дело. Смотрите, у него еще нет названия и расширения – только какое-то неопределенное Untitled-1. А в правом нижнем углу написано Plain Text (простой текст).

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

  • меню: Файл - Сохранить
  • горячая комбинация: Ctrl+S
  • палитра команд: File: Save File

Дайте файлу имя sieve.py.

Теперь редактор понял, что имеет дело с кодом на Python, и исправился:


Так гораздо лучше! В правом нижнем углу появилась надпись Python, значит все работает правильно.

Если на вашем компьютере установлено несколько интерпретаторов языка (Python 2.7, Python 3.x или Anaconda), вы можете выбирать нужный. Для этого кликните на индикаторе языка (внизу в левой части экрана) или наберите в палитре команд Python: Select Interpreter .

По умолчанию VS Code поддерживает форматирование с использованием pep8, но вы можете выбрать black или yapf, если хотите.

Допишем код алгоритма:

Если вы будете вводить его вручную (без copy-paste), то сможете увидеть IntelliSense редактора в действии.

VS Code автоматически делает отступы перед операторами for и if , добавляет закрывающие скобки и предлагает варианты завершения слов.

Запуск программы

Чтобы запустить готовую программу, нам даже не нужно выходить из редактора! Просто сохраните файл, вызовите правой кнопкой мыши контекстное меню и выберите в нем пункт Выполнить файл в консоли.

Теперь, когда код завершен, его можно запустить. Для этого не нужно выходить из редактора: Visual Studio Code может запускать эту программу непосредственно в Редакторе. Сохраните файл (с помощью Ctrl+S ), затем щелкните правой кнопкой мыши в окне редактора и выберите пункт Запустить файл Python в терминале.

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

Линтинг кода

  • flake8
  • mypy
  • pydocstyle
  • pep8
  • prospector
  • pyllama
  • bandit

Подробные сведения о настройке каждого из них вы можете найти здесь.

Обратите внимание, что линтер настраивается для конкретной рабочей области, а не глобально.

Редактирование существующего проекта

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

С редактором можно работать прямо из консоли, открывая и создавая файлы простой командой code filename.py .

Посмотрим, на что способен VS Code на примере уже готового проекта. Это библиотека для анализа уравнений, основанная на "алгоритме маневровой станции" (shunting-yard algorithm) Дийкстры. Вы можете клонировать этот репозиторий, чтобы начать работу.

Открыть созданную локально папку в редакторе можно из терминала:

VS Code умеет работать с различными средами: virtualenv, pipenv или conda.

Также вы можете открыть папку прямо из интерфейса редактора:

  • меню: Файл - Открыть папку
  • горячие клавиши: Ctrl+K , Ctrl+O
  • из палитры команд: File: Open Folder

Вот так выглядит открытый проект:


По умолчанию при открытии папки VS Code также открывает файлы, с которыми вы работали в последний раз. Это поведение можно изменить.

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

Тестирование

Грамотное программирование на Python помимо собственно написания кода включает также его тестирование.

Visual Studio Code умеет автоматически распознавать тесты в unittest, pytest или Nose. В нашем проекте есть модульный тест, который можно использовать для примера.

Чтобы запустить существующие тесты, из любого файла Python вызовите правой кнопкой мыши контекстное меню и выберите пункт Запустить текущий тестовый файл.

Нужно будет указать используемый для тестирования фреймворк, путь поиска и шаблон для имени файлов тестов. Эти настройки сохраняются как параметры рабочей области в локальном файле .vscode/settings.json. Для нашего проекта нужно выбрать unittest, текущую папку и шаблон *_test.py.

Теперь можно запустить все тесты, кликнув на Run Tests в строке состояния или из палитры команд.

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

Результаты тестов отображаются во вкладке Output (раздел Python Test Log выпадающего меню).

Посмотрите также:

Отладка кода

Несмотря на то, что VS Code – это просто редактор кода, а не полноценная IDE, он позволяет отлаживать код Python прямо в рабочей области. У него есть много функций, которые должны быть у хорошего отладчика:

  • Автоматическое отслеживание переменных
  • Отслеживание выражений
  • Точки прерывания
  • Инспекция стека вызовов

Все эти данные можно найти во вкладке Debug левой панели.


Отладчик может управлять приложениями Python, запущенными во встроенной консоли или внешнем терминале. Он может подключаться к уже запущенным экземплярам Python и даже отлаживать приложения Django и Flask.

Отладить программу на Python так же просто, как запустить отладчик с помощью F5 . Используйте F10 и F11 для перехода к следующей функции и для захода в текущую функцию. Shift+F5 – выход из отладчика. Точки останова задаются с помощью клавиши F9 или щелчком мыши в левом поле окна редактора.

Перед началом отладки более сложных проектов, включая приложения Django или Flask, необходимо настроить и выбрать конфигурацию отладки. Сделать это очень просто. Во вкладке Debug найдите раскрывающееся меню Configuration и нажмите Add Configuration:


VS Code создаст и откроет файл .vscode/launch.json, в котором можно настроить конфигурации Python, а также отладку приложений.

Вы даже можете выполнять удаленную отладку и дебажить шаблоны Jinja и Django. Закройте launch.json и выберите нужную конфигурацию приложения из раскрывающегося списка.

Посмотрите также:

Интеграция с Git

В VS Code прямо из коробки есть встроенная поддержка управления версиями. По умолчанию подключен Git и GitHub, но вы можете установить поддержку других систем. Все работа происходит во вкладке Source Control левого меню:


Если в проекте есть папка .git, весь спектр функций Git/GitHub включается автоматически. Вы можете:

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


VS Code также распознает изменения, внесенные вне редактора.


Visual Studio Code + Python = довольный разработчик

Visual Studio Code – один из самых крутых редакторов кода и замечательный инструмент для разработки. Редактор из коробки предлагает множество полезных возможностей и гибко подстраивается под все ваши потребности. Программирование на Python становится проще и эффективнее.

А какой редактор (или полноценную IDE) для разработки на Python используете вы?

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