![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTk7uHE8zTSPQzsoWouFwPdcetwxKGQPcTgnTDMWpJrZWbH5h_l-2V7Y7CTxaf47NHWKrg5h9hzKyFyK7i9pPipMaWsVMw4E7ozt1qGpESdJALdNSKoAygDDmnbg07L2dYlRHbyJ6ko8zAXVGARlgNVl1PexB7QSMX-njaaN2RZH1RP3TRaU9hEsey/s640/letters-483010_640.jpg)
Начинать разработку конечно нужно с установки интерпретатора. Повезло тем, у кого установлена операционная система семейства Linux — тогда вопрос установки скорее всего не стоит и интерпретатор Python уже установлен. Если Python не установлен, то инсталлятор для всех популярных ОС совершенно бесплатно можно скачать с официального сайта.
После этого можно попробовать запустить Python, но никакой среды разработки вы не увидите, а увидите интерактивную консоль:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHC_z0vpCIli5GsMlA3gAl6jiRAuXApEG2snG0X_IQa9XlbDCADfFFVfYwi--qo9cYJBiNf3iyAL7Gu4EcIaAYdoi9S68eGriTV3DSItTez2Je3PABBmHL-mBoBlyF8mICVzO2nBOZMUbVsqh9AxJnPTohR_JaR2rVM3_Zg4YZ6LDg-I7Tdzh_bFXZ/s640/console.png)
Хотя этот вопрос и не такой популярный как про выход из Vim, но сразу подскажу, что выйти из интерактивного режима можно написав quit().Если очень хочется какую-нибудь среду разработки, то PyCharm мне показалось наиболее удобной (помимо платной версии есть и Community Edition). Под Windows конечно еще есть привычная Visual Studio с Python Tools.С инструментами покончено, время понять какие важные отличия от C++ нужно сразу усвоить. Во-первых, Python использует duck typing. Это означает, что если в какой-то момент выполнения программы объект имеет все свойства класса, то он в этот момент считается объектом этого класса. Если сравнивать с C++, то ближе всего к этому концепты (Concepts), которые кстати не попадут в C++17.
If it looks like a duck, swims like a duck and quacks like a duck, then it probably is a duck.Во-вторых, многопоточности в Python нет. Если вы будете мучить Google на эту тему, то скорее всего наткнетесь на GIL (Global Interpreter Lock), но это совсем не та многопоточность, к которой привыкли C++ разработчики. Схематично принцип такой многопоточности показан на картинке — тут хорошо видно, что параллельно никакие потоки не выполняются, даже если у вас многоядерный процессор:Полноценная многопоточность обычно реализуется за счет запуска отдельных процессов. Для начала это все, что нужно знать про многопоточность в Python.Остальные вопросы, которые часто возникают у новичков, и ответы на них можно найти на StackOverflow.com в секции с часто задаваемыми вопросами. Стоит просмотреть первых штук 50.Из этих вопросов вы узнаете, что файлы на Python имеют расширение py и их стоит начинать со следующей строки:
#! /usr/bin/env pythonЭто позволяет запускать скрипт в виртуальных окружениях с разными версиями Python. Сам же Python выполняет файл последовательно с первой строки и далее. При этом нет никакой функции main, как в C или C++. Хотя часто в скриптах встречается строка if __name__ == "__main__", которую ошибочно можно принять за точку входа. Но нет, если за пределами этого выражения будет другой код, то он также выполнится. А само выражение удобно использовать для создания и запуска тестов в подключаемых модулях.
В следующий раз расскажу как создать модуль и тесты для него, и как это потом опубликовать и «непрерывно интегрировать». А ниже моя первая программа на Python:
#! /usr/bin/env python # vim: set fileencoding=utf-8 : """ Hello world in Python """ def main(): print("Hello world!") if __name__ == "__main__": main()Книги по теме: