на каком языке программирования написана основная реализация спецификации python

Язык Python — описание, синтаксис, плюсы и минусы

P ython — высокоуровневый язык программирования общего назначения. Он имеет минималистичный синтаксис и направлен на повышение читаемости кода (и в целом на повышение производительности разработчика).

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

О языке

По-русски Python произносится как — «пайтон», но более распространенная версия произношения — «питон». Язык поддерживает несколько парадигм программирования: объектно-ориентированное, функциональное, структурное, императивное и аспектно-ориентированное.

История создания

Разработку Python начал Гвидо ван Россум в декабре 1989 года. Для ОС Amoeba требовался расширяемый скриптовый язык. На досуге, Гвидо начал писать Python, позаимствовав некоторые наработки из языка ABC.

Версия Python 2.0 была выпущена 16 октября 2000 г., а первая обратно-несовместимая версия Python 3.0 — 3 декабря 2008 г.

Какие задачи удобно решать на Python

Основной упор в Python делается на скорости написания кода (а не на скорости выполнения кода, как например в языках С и C++). Поэтому в первую очередь Python удобно использовать там, где нужно быстро написать что-то работающее.

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

Другая область применения, для которой хорош Питон — системное администрирование и DevOps. На это есть как минимум 3 причины:

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

Типизация

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

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

В «Питоне» реализованы встроенные типы, например:

Также есть и готовые коллекции:

Добавить новый тип можно написав свой класс или определив новый тип в модуле расширения.

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

Производительность

По производительности Python относительно медленный язык (по сравнению с C, Go, Java). Его скорость выполнения схожа с другими интерпретируемыми языками (PHP, Ruby). Однако возможность компиляции python-кода в байт-код позволяет добиться большей производительности.

Основные причины, из-за которых Python «медленный»:

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

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

Global Interpreter Lock — это глобальная блокировка интерпретатора Python. GIL накладывает ограничение на потоки — нельзя использовать несколько процессоров одновременно. Тем самым GIL помогает избежать конфликтов при одновременном обращении разных потоков к одним и тем же участкам памяти.

Многие разработчики против GIL в Python-е, однако создатель проекта Гвидо ван Россум заявляет, что GIL не так уж и плох, и убирать его из CPython`а он не планирует.

Плюсы и минусы Python

Синтаксис

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

Синтаксис Python прост и лаконичен, что делает его удобным для изучения.

Отличительная черта языка — использование отступов для выделения блоков кода и управляющих структур

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

Пример кода

Простой пример кода — классический «Hello, World!»:

Попробуем разобрать более сложный код. Дано: 10 рандомных чисел. Необходимо отсортировать их в порядке возрастания.

from random import randint def get_numbers(count): numbers = [] for i in range(count): numbers.append(randint(1, 99)) return numbers my_numbers = get_numbers(10) my_numbers.sort() print(my_numbers)

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

[20, 27, 29, 36, 53, 74, 75, 81, 87, 93]

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

Источник

Основные реализации Python: характеристика и преимущества

В этой статье мы расскажем вам о CPython, Jython, IronPython, PyPy и Cython. Поговорим об их основных отличиях и преимуществах.

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

Область компьютерных наук является, пожалуй, самой популярной в наши дни. И она всё ещё продолжает расти и развиваться. То, что представляют из себя компьютерные науки сейчас, совсем не похоже на то, чем они были в самом начале. Благодаря Computer Science, теперь есть возможность создавать вещи, которые волшебным образом меняют жизни миллионов людей! Такой разительный прогресс позволил создать искусственный интеллект, глубокое обучение и многие другие концепции, которые раньше считались невозможными.

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

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

Основные реализации Python

Мы уже несколько раз использовали термин «реализация». Но что под этим подразумевается? Говоря о реализации, мы имеем в виду то, как был написан интерпретатор – какие языки были использованы и какова главная задача конкретно этого интерпретатора.

А теперь давайте разберем некоторые реализации Python.

1. CPython

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

CPython – это, по сути, дефолтный и наиболее распространенный интерпретатор (реализация) языка Python, написанный на C. Это изначальная версия языка, которую пользователи скачивают с официального сайта – Python.org.

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

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

Марк Лутц «Изучаем Python»

Скачивайте книгу у нас в телеграм

2) Jython

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

Jython – это ещё одна реализация Python. Она была написана на Java и работает на Java-платформах. Как и в CPython, исходный код конвертируется в байт-код – набор инструкций для интерпретатора. Jython работает на виртуальной машине, которая использует то же окружение, что и Java. Данная реализация обеспечивает удобную работу с Java-программами. Вы легко сможете вызывать и использовать свои функции и классы Java непосредственно из Jython. Это дает пользователям Python доступ к огромнейшей экосистеме библиотек и фреймворков, имеющихся в Java. И наоборот.

3) IronPython

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

4) PyPy

Эта реализация написана на самом Python и является альтернативой CPython. PyPy был написан с учетом всех особенностей языка Python, поэтому он наиболее совместим с CPython. Это позволяет запускать веб-фреймворки, такие как Django и Flask. PyPy использует концепцию JIT-компиляции (Just-in-time), которая позволяет компилировать исходный код прямо во время выполнения программы. Это делает PyPy в несколько раз быстрее CPython. Многие пользователи последнего жаловались именно на низкую скорость выполнения. Таким образом, PyPy полностью улучшает эту часть CPython.

5) Cython

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

В отличие от других реализаций Python, упомянутых выше, Cython не является интерпретатором Python. Это, скорее, надмножество языка Python, которое дает возможность пользователям компилировать программы на языке C.

Вообще, объединенная мощь Python и C — самое потрясающее в Cython. Благодаря ей Cython можно использовать для написания расширений C, а также для преобразования Python-кода в C. Таким образом, Cython сохраняет удобство и комфорт, за которые все так любят Python, устраняя многие ограничения последнего.

Заключение

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

Источник

Почему существует так много Питонов?

Удивительно, но это довольно неоднозначное заявление. Что я имею ввиду под “Питоном”? Может, абстрактный интерфейс Питона? Или CPython, распространенная реализация Питона (не путать с похожим по названию Cython)? Или я имею ввиду что-то совсем иное? Может, я косвенно ссылаюсь на Jython, или IronPython, или PyPy. Или может я отвлекся так сильно, что говорю о RPython или RubyPython (которые очень сильно отличаются).

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

При работе с Питоном я столкнулся с кучей таких технологий. Инструменты *ython. Но лишь недавно я уделил время, чтобы разобраться, что они собой представляют, как они работают и почему они (каждая по-своему) необходимы.

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

Все начинается с понимания того, чем на самом деле является “Питон”.

Если у вас хорошее понимание машинного кода, виртуальных машин и так далее, можете пропустить этот раздел.

Питон интерпретируемый или компилируемый?

Это распространенный источник непонимания среди новичков Питона.

Первое, что необходимо понять: “Питон” – это интерфейс. Существует спецификация, описывающая, что должен делать Питон, и как он должен себя вести (что справедливо для любого интерфейса). И существует несколько имплементаций (что также справедливо для любого интерфейса).

Второе: “интерпретируемый” и “компилируемый” это свойства имплементации, но не интерфейса.

Так что сам вопрос не совсем корректен.

В случае с самой распространенной реализацией (CPython: написанный на C, часто называемый просто “Python”, и, конечно, именно тот, который вы используете, если понятия не имеете о чем я толкую) ответ: интерпретируемый, с некоторой компиляцией. CPython компилирует* исходный код на Питоне в байткод, а затем интерпретирует этот байткод, запуская его в процессе.

* Замечание: это не совсем “компиляция” в традиционном смысле. Обычно, мы считаем, что “компиляция” это конвертация из высокоуровневого языка в машинный код. Тем не менее – в некотором роде это “компиляция”.

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

Байткод или машинный код

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

— Cи компилируется в машинный код, который впоследствии запускается напрямую процессором. Каждая инструкция заставляет процессор производить разные действия.
— Java компилируется в байткод, который впоследствии запускается на Виртуальной машине Java (Java Virtual Machine, JVM), абстрактном компьютере, который запускает программы. Каждая инструкция обрабатывается JVM, который взаимодействует с компьютером.

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

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

Возвращаясь к CPython, цепочка операций выглядит следующим образом:

1. CPython компилирует ваш исходный код на Питоне в байткод.
2. Этот байткод запускается на виртуальной машине CPython.

Альтернативные виртуальные машины: Jython, IronPython и другие

Как я говорил выше, у Питона существует несколько реализаций. Опять же, как говори-лось выше, самой популярной является CPython. Эта версия Питона написана на C и считается имплементацией “по умолчанию”.

Но как насчет альтернатив? Одна из наиболее видных это Jython, реализация Питона на Java, которая использует JVM. В то время как CPython генерирует байткод для запуска на CPython VM, Jython генерирует байткод Java для запуска на JVM (это то же самое, что генерируется при компиляции программы на Java).

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

“Зачем может понадобиться использовать альтернативную реализацию?”, спросите вы. Ну, для начала, разные реализации хорошо ладят с разными наборами технологий.

CPython упрощает написание C-расширений для кода на Питоне потому что в конце он запускается интерпретатором Cи. Jython в свою очередь упрощает работу с другими программами на Java: вы можете импортировать любые Java-классы без дополнительных усилий, призывая и используя ваши Java-классы из программ на Jython. (Замечание: если вы еще не думали об этом всерьез, это довольно безумно. Мы дожили до того времени, когда можно смешивать разные языки и компилировать их в одну сущность. Как заметил Rostin, программы, смешивающие код на Фортране с Cи появились довольно давно, так что это не совсем новинка. Но это все же круто.)

В качестве примера, вот корректный код на Jython:

[Java HotSpot(TM) 64-Bit Server VM (Apple Inc.)] on java1.6.0_51
>>> from java.util import HashSet
>>> s = HashSet(5)
>>> s.add(«Foo»)
>>> s.add(«Bar»)
>>> s
[Foo, Bar]

Можно сказать, что Jython: Java :: IronPython: C#. Они работают на соответствующих виртуальных машинах, есть возможность импортировать классы C# в код IronPython и классы Java в код Jython, и так далее.

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

Кстати, хоть это и не станет причиной для перехода на другую имплементацию, стоит упомянуть, что имплементации эти на самом деле отличаются поведением. Это касается не только способов интерпретации кода на Питоне. Однако эти отличия, как правило, не-значительны, они исчезают и появляются со временем из-за активной разработки. К примеру, IronPython использует строки Unicode по умолчанию; однако CPython использует ASCII в версиях 2.x (выдавая ошибку UnicodeEncodeError для не-ASCII символов), и при этом поддерживает символы Unicode по умолчанию в версиях 3.x.

Компиляция на лету (Just-in-Time Compilation): PyPy и будущее

Итак, у нас есть имплементация Питона, написанная на Си, еще одна – на Java, и третья на C#. Следующий логичный шаг: имплементация Питона, написанная на… Питоне. (Подготовленный читатель заметит, что это утверждение немного обманчиво).

Вот почему это может сбивать с толку. Для начала, давайте обсудим компиляцию на лету (just-in-time или JIT).

JIT. Почему и как

Напомню, что нативный машинный код намного быстрее байткода. Ну, а что, если бы можно было компилировать часть байткода и запускать его как нативный код? Пришлось бы “заплатить” некоторую цену (иными словами: время) за компиляцию байткода, но если результат будет работать быстрее, то это здорово! Этим и мотивируется JIT-компиляция, гибридная техника, которая совмещает в себе преимущества интерпретато-ров и компиляторов. В двух словах – JIT старается использовать компиляцию, чтобы ускорить систему интерпретации.

Например, вот распространенный подход JIT:

В этом вся суть PyPy: использовать JIT в Питоне (в дополнении можно найти предыдущие попытки). Конечно, есть и другие цели: PyPy нацелен на кроссплатформенность, работу с небольшим количеством памяти и поддержку stackless (отказа от стека вызовов языка Си в пользу собственного стека). Но JIT это главное преимущество. В среднем на основе временных тестов, фактор ускорения составляет 6.27. Более подробные данные можно получить из схемы от PyPy Speed Center:

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

В PyPy сложно разобраться

У PyPy есть огромный потенциал, и в данный момент он хорошо совместим с CPython (так что на нем можно запускать Flask, Django, и т.д.).

Но с PyPy есть много путаницы. (оцените, к примеру, это бессмысленное предложение создать PyPyPy…). По моему мнению основная причина в том, что PyPy одновременно является:

1. Интерпретатором Питона, написанным на RPython (не Python (я обманул вас до этого)). RPython это подмножество Python со статичной типизацией. В Python, вести тщательные беседы о типах “в целом невозможно” почему это так сложно? рассмотрите следующее:

x = random.choice([1, «foo»])

это корректный код на Python (спасибо Ademan‘у). Какой тип у x? Как мы можем обсуждать типы переменных, когда типы даже не форсируются?). В RPython мы жертвуем некоторой гибкостью, но взамен получаем возможность гораздо проще управлять памятью и много чего еще, что помогает при оптимизации.

2. Компилятором, который компилирует код на RPython в разные форматы и поддерживает JIT. Платформой по-умолчанию является Си, то есть компилятор RPython-в-Си, но в качестве целевой платформы также можно выбрать JVM и другие.

Для простоты описания, я буду называть их PyPy (1) и PyPy (2).

Зачем могут понадобиться эти две вещи, и почему – в одном наборе? Думайте об этом так: PyPy (1) это интерпретатор, написанный на RPython. То есть он берет пользовательский код на Питоне и компилирует его в байткод. Но чтобы сам интерпретатор (написанный на RPython) мог работать, он должен быть интерпретирован другой реализацией Пи-тона, верно?

Итак, можно просто использовать CPython чтобы запускать интерпретатор. Но это будет не слишком быстро.

Вместо этого мы используем PyPy (2) (называемый RPython Toolchain) чтобы компилировать интерпретатор PyPy в код для другой платформы (например, C, JVM, или CLI) для запуска на конечной машине, с добавлением JIT. Это волшебно: PyPy динамически добавляет JIT к интерпретатору, генерируя собственный компилятор! (Опять же, это безумие: мы компилируем интерпретатор, добавляя другой отдельный, самостоятельный компилятор).

В конце концов результатом будет самостоятельный исполняемый файл, который интерпретирует исходный код на Питоне и использует оптимизацию JIT. То, что нужно! Понять сложновато, но, возможно, эта схема поможет:

на каком языке программирования написана основная реализация спецификации python. Смотреть фото на каком языке программирования написана основная реализация спецификации python. Смотреть картинку на каком языке программирования написана основная реализация спецификации python. Картинка про на каком языке программирования написана основная реализация спецификации python. Фото на каком языке программирования написана основная реализация спецификации python

Повторим: настоящая красота PyPy в том, что мы можем написать себе кучу разных интерпретаторов Питона на RPython не волнуясь о JIT (не считая пары деталей). После этого PyPy реализует для нас JIT, используя RPython Toolchain/PyPy (2).

На самом деле, если копнуть глубже в абстракцию, теоретически можно написать интерпретатор любого языка, направить его в PyPy и получить JIT для этого языка. Это возможно потому, что PyPy концентрируется на оптимизации самого интерпретатора, а не деталей языка, который тот интерпретирует.

В качестве отступления я бы хотел заметить, что сам JIT совершенно восхитителен. Он использует технику под названием “отслеживание” (tracing), которая работает следующим образом:

Узнать больше можно из этой легкодоступной и очень интересной публикации.

Подытожим: мы используем PyPy-компилятор RPython-в-Си (или другую целевую плат-форму), чтобы скомпилировать реализованный на RPython интерпретататор PyPу.

Заключение

Почему все это так восхитительно? Почему стоит гнаться за этой безумной идеей? По-моему, Алекс Гейнор объяснил это очень хорошо в своем блоге: “[За PyPy будущее] потому что [он] более быстрый, более гибкий и является лучшей платформой для развития Питона”.

Дополнение: другие названия, которые вы, возможно, слышали

Python 3000 (Py3k): альтернативное название Python 3.0, основной релиз Питона с обратной совместимостью, который появился в 2008. году. Команда Py3k предсказала, что новой версии понадобится примерно пять лет чтобы полностью прижиться. И в то время, как большинство (внимание: надуманное утверждение) разработчиков на Питоне продолжают использовать Python 2.x, люди все больше задумываются о Py3k.

Numba: “специализированный just-in-time компилятор”, который добавляет JIT в снабженный примечаниями код на Питоне. Проще говоря, вы даете ему подсказки, а он ускоряет некоторые части вашего кода. Numba является частью дистрибутива Anaconda набора пакетов для анализа и управления данными.

IPython: сильно отличается от всего, что мы обсудили. Вычислительная среда для Питона. Интерактивная, с поддержкой GUI-пакетов, браузеров и так далее.

Psyco: модуль расширения Питона, одна из первых попыток Питона в области JIT. Давно помечен как “неподдерживаемый и мертвый”. Главный разработчик Psyco Армин Риго сейчас работает над PyPy.

Привязки к языкам
JavaScript фреймворки

Источник

Реализации Python.

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

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

На сайте docs-python.ru говориться о CPython, как о наиболее широко используемой реализации.

CPython

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

CPython можно использовать на любой платформе, обеспечивающей работу компилятора языка С, т.е. на любой из современных популярных платформ. О том, как загрузить и установить CPython смотри раздел «Установка Python».

Jython

Jython это реализация Python на виртуальной машине Java (JVM). Аналогично IronPython, код, выполняемый в Jython, может взаимодействовать с классами и библиотеками Java, но не может использовать многие библиотеки, предназначенные для CPython.

Jython поддерживает пока только версию v2. Работая на Jython, вы сможете использовать все библиотеки и фреймворки Java. Оптимальное использование Jython требует знакомства с основными классами Java. Вам не придется писать код на Java, но документация и примеры для библиотек реализованы в терминах Java, по этому, Jаvа-классы не должны быть для вас чем-то новым. Чтобы освоить Jython, вам следует почитать книгу The Definitive Guide to Jython.

lronPython

С IronPython можно использовать все библиотеки и фреймворки CLR. Существует кросс-платформенная реализация CLR, известная под названием Mono (www.mono-project.com) которая работает под управлением других операционных систем. Оптимальное использование IronPython требует знакомства с основными библиотеками CLR. Вам не придется писать код на С#, но документация и примеры для библиотек реализованы в терминах С#, по этому, язык С# не должен быть для вас чем-то новым. Чтобы использовать IronPython, вам следует обратиться к оригинальной онлайн-документа­цией IronPython.

Anaconda

Предназначена в основном для:

Поддерживаются платформы Linux (x86-64), Windows (i686, x86-64), macOS

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *