50 команд на Python часть 1

Python известен как очень плотный язык, с большим количеством модулей, способных делать практически все. Здесь мы рассмотрим основные основные моменты, которые необходимо знать.
Python имеет обширную среду дополнительных модулей которые могут обеспечить функциональность в сотнях различных дисциплин. Тем не менее, каждый язык программирования имеет основной набор функциональных возможностей, которые каждый должен знать для того, чтобы выполнять полезную работу. Python
ничем не отличается в этом отношении. Здесь мы рассмотрим 50 команд, которые мы считаем необходимыми для программирования на Python. Другие могут выбрать несколько другой набор, но в этом списке собраны лучшие из лучших.
Мы рассмотрим все основные команды, от импорта дополнительных модулей в начале программы до возврата значений в вызывающую среду в конце программы. Мы также рассмотрим некоторые команды, которые полезны для получения информации о текущем сеансе работы в Python, например, текущий список переменных, которые были и как используется память.
Поскольку среда Python предполагает использование множества дополнительных модулей, мы также рассмотрим несколько команд, которые находятся строго за пределами Python. Мы увидим, как устанавливать внешние модули и как управлять несколькими окружениями для различных проектов разработки. Поскольку это будет список команд, предполагается, что вы уже знаете основы Python.
Предполагается, что вы уже знаете основы использования циклов и условных структур. Этот материал
предназначен для того, чтобы помочь вам вспомнить команды, которые, как вы знаете, вы уже видели, и, надеюсь, познакомить вас с некоторыми из них, которые вы, возможно, еще не видели. Хотя мы постарались собрать в 50 советах все, что вам может понадобиться, Python - настолько обширный язык, что некоторые команды могут быть упущены.
1. Импортирование модулей
Сильной стороной Python является его способность расширяться с помощью модулей. Первым шагом во многих программах является импорт тех модулей, которые вам нужны. Простейший оператор импорта - это просто вызов 'import modulename'. В этом случае те функции и объекты не находятся в общем пространстве имен. Вы должны вызывать их, используя полное имя (modulename.methodname). Вы можете сократить часть 'modulename' с помощью команды 'import modulename as mn'. Вы можете полностью пропустить этот вопрос с помощью команды 'from modulename import *', чтобы импортировать все из данного модуля. Затем вы можете вызывать предоставленные возможности напрямую. Если вам нужны только некоторые из предоставленных возможностей, вы можете импортировать их выборочно, заменив '*' на именами методов или объектов.
2. Перезагрузка модулей
Когда модуль импо
ртируется впервые, в это время выполняются любые функции инициализации. Это может включать создание объектов данных или инициирование соединений. Но это делается только в первый раз в рамках данного сеанса. Повторный импорт того же модуля не приведет к повторному выполнению кода инициализации. Если вы хотите, чтобы этот код был запущен повторно, вам нужно использовать команду reload. Формат команды - 'reload (modulename)'. Следует помнить, что словарь из предыдущего импорта не сбрасывается, а только переписывается. Это означает, что все определения, которые изменились между импортом и перезагрузкой, будут обновлены правильно. Но если вы удалите определение, старое определение останется и будет по-прежнему доступно. Могут быть и другие побочные эффекты, поэтому всегда используйте их с осторожностью.
3. Установка новых
модулей
Хотя большинство команд, которые мы рассматриваем, являются командами Python, которые должны выполняться внутри сессии Python, есть несколько важных команд, которые должны выполняться вне Python. Первая из них - pip. Установка модуля включает в себя загрузку исходного кода и компиляцию любого включенного внешнего кода. К счастью, на сайте http://pypi.python.org есть репозиторий с сотнями модулей Python. Вместо того чтобы делать все вручную, вы можете установить новый модуль с помощью команды 'pip install modulename'. Эта команда также выполнит проверку зависимостей и установит все недостающие модули, прежде чем установить тот, который вы запросили. Вам могут понадобиться права администратора, если вы хотите, чтобы новый модуль был установлен в глобальную библиотеку вашего компьютера. На машине Linux достаточно запустить команду pip с правами администратора sudo. В противном случае вы можете установить его в каталог вашей личной библиотеки, добавив параметр командной строки '-user'.
4. Выполнение сценария
Импорт модуля запускает код внутри модуля, но делает это через код сопровождения модуля в движке Python. Этот код сопровождения также имеет дело с запуском инициализирующего кода. Если вы хотите только взять сценарий Python и выполнить необработанный код в текущей сессии, вы можете использовать команду 'execfi le ("fi lename.py")', где главным параметром является строка, содержащая сценарий Python для загрузки и выполнения. По умолчанию все определения загружаются в локальные и глобальные файлы текущего сеанса. Вы можете включить два дополнительных параметра в команду execfi le. Эти два параметра - оба словаря, один для разного набора locals, другой для разного набора globals. Если вы передаете только один словарь, предполагается, что это словарь globals
5. Расширенная оболочка
Интерактивная оболочка по умолчанию предоставляется командой 'python', но она довольно ограничена. Расширенная оболочка предоставляется командой 'ipython'. Она предоставляет разработчику кода множество дополнительных функций. Имеется подробная система истории, дающая доступ не только к командам текущего сеанса, но и предыдущих сеансов. Есть также магические команды, которые обеспечивают расширенные способы взаимодействия с текущей сессией Python. Для более сложного взаимодействия вы можете создавать и использовать макросы. Вы также можете легко заглянуть в память сеанса Python и декомпилировать код Python. Можно даже создавать профили, позволяющие обрабатывать шаги инициализации, которые могут потребоваться при каждом использовании iPython.