Шрифт
Язык программирования Python за 10 минут
Play

Язык программирования Python за 10 минут

Этот материал расчитан на тех, кто уже знаком с программированием и хочет освоить язык программирования Python. Он расчитан на то, чтобы за 10 минут показать вам особенности языка Python, особенности синтаксиса и основные принципы работы с Python на примерах. Здесь нет никакой «воды» — информации, которая не имеет непосредственного отношения к языку программирования. Начнем!

Особенности Python

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

Объявление переменных необязательно, названия восприимчивы к регистру (var и VAR — две разные переменные).

Язык Python объектно-ориентирован, все в языке является объектом.

Получение справки

Справка (помощь) в Python всегда доступна прямо в интерпретаторе. Если вы хотите знать, как объект работает, вызовите help(<object>). Также полезной инструкцией является dir() , которая показывает все методы объекта, и свойство объектов <object>.__doc__ , которая покажет вам строку документации:

Синтаксис языка Python

В Python нет конструкций для завершения блоков (таких как описание класса или функции, например) — блоки определяются с использованием отступов. Увеоичение отступа в начале блока, уменьшение — в конце блока. Инстукции, которые предполагают наличие отступов, завершаются символом двоеточия (:). Если после инструкции начала блока у вас пока нет кода, вставьте оператор pass для прохождения синтаксической проверки.

Однострочные комментарии начинаются с символа решетки (#), многострочные используют ( """ ) в начале и в конце комментария.

Значения присваиваются с использованием знака равенства («=») (по факту объектам присваиваются имена в процессе).

Проверка на различие выполняется с двумя символами равенства («==»).

Можно увеличить значение с помощью оператора += и уменьшить с -=, указав в левой части переменную, а в правой — значение, на которую произойдет увеличение/уменьшение. Это работает со многими типами данных в Python, включая строки.

Можно присвоить значение неспольким переменным в одной строке. Примеры:

Типы данных в Python

В Python доступны такие типы данных, как списки (lists), кортежи (tuples) и словари (dictionaries). Также доступны множества — с использованием модуля sets в версиях до Python 2.5 и встроены в язык в более поздних.

Списки похожи на одномерные массивы. При этом можно иметь список, состоящий из других списков.

Словари — это ассоциативные массивы, в которых доступ к данным осуществляется по ключу.

Кортежи — это неизменяемые одномерные массивы.

«Массивы» в Python могут быть любого типа, то есть вы можете совмещать числа, строки и другие типы данных в списках/словарях/кортежах.

Индекс первого элемента — 0. Негативное значение индекса начинает отсчет от последнего к первому, [-1] укажет на последний элемент.

Переменные могут указывать на функции.

Вы можете получить срез массива (списка или кортежа) через использование двоеточия (:). Оставляя пустым начальное значение индекса, вы укажете начинать с первого значения, пустое значение конца индекса предполагает последний элемент массива. Негативные индексы считаются с конца массива назад ( -1 — укажет на последний элемент ).

Строки в Python

Для обозначения строки может использоваться апостроф (‘) или двойные кавычки (double quote — «). Благодаря этому вы можете иметь кавычки внутри строки, обозначенной с помощью апострофов (например ‘He said «hello».’ — правильная строка).

Многострочные строки обозначаются с использованием тройного апострофа или кавычек ( """ ). Python поддерживает юникод из коробки. При этом во второй версии Python для обозначения строки, содержажей unicode, используется символ (u): u»This is a unicode string». В Python3 все строки содержат юникод. Если в Python3 вам нужна последовательность байтов, которой была по сути строка в предыдущих версиях, используется символ (b): b»This is a byte string».

Для подстановки значений параметров в строку используется оператор (%) и кортеж. Каждый %s заменяется на элемент из кортежа, слева направо. Также вы можете использовать словарь для подстановки именованнх параметров:

Инструкции для контроля потока — if, for, while

Для контроля порядка выполнения программы используются инстукции if , for и while . В Python нет switch или case , вместо них используется if . For используется для прохождения по элементам списка (или кортежа). Для получения последовательности чисел, используйте range(<number>) . Для прерывания выполнение цикла используется break .

Синтаксис этой конструкции следующий:

Функции в Python

Функции объявляются с использованием ключевого слова «def». Необязательные аргументы следуют в объявлении функции после обязательных и им назначается значение по-умолчанию. При вызове функции, можно передавать аргументы через указание их имени и значения, при этом пропуская часть необязательных аргументов или располагая их в порядке, отличном от объявленном в функции.

Функции могут возвращать кортеж и используя распаковку кортежа вы можете возвращать несколько значений.

Лямбда-функции (lambda functions) — специальные фукции, обрабатывающие один аргумент.

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

Классы Python

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

Частные переменные и методы могут быть объявлены ( по соглашению, это не проверяется интерпретатором) с использованием двух символов подчеркивания вначале и не более одного в конце имени (напрмер: «__spam»).

Мы также можем назначать произвольные имена экземплярам класса. Просмотрите примеры:

Исключения в Python

Исключения в Python обрабатываются в блоках try-except [exceptionname]:

Импорт модулей в Python

Внешние библиотеки используются после импорта с использованием ключевого слова import [libname] . Вы также можете использовать from [libname] import [funcname] для импорта индивидуальных функций.

Работа с файлами в Python

Python обладает большим количеством библиотек для работы с файлами. Например, сериализация (конвертирование данных в строки с библиотекой pickle ):

Разное

  • Условия могут склеиваться, например 1 < a < 3 проверит, что a одновременно меньше 3 и больше 1.
  • Вы можете использовать del для удаления переменных или элементов в массивах.
  • Списки дают очень сильные возможности для манипуляции данными. Вы можете составить выражение с использованием for и последующими инструкциями if или for :
  • Глобальные переменные объявляются вне функций и могут читаться без специальных объявлений внутри, но если вы хотите записывать их, вы должны объявить из в начале функции с использованием специального ключевого слова «global», иначе Python назначит новое значение локальной переменной:

Как выучить язык программирования Python

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

Если вам недостаточно изложенной информации — просмотрите расширенный материал с описанием языка программирования Python — http://itman.in/python-howto/ — в нем сведения о языке изложены более подробно.

Большая благодарность Stavros Korokithakis за его отличный tutorial «Learn Python in 10 minutes».

Если вы хотите что-то улучшить в этом материале — пожалуйста напишите в комментариях.

Язык программирования Python за 10 минут: 8 комментариев

Python предлагает большие возможности для работы со списками . Вы можете использовать операторы объявлении структуры списка. Оператор for позволяет задавать элементы списка в определенной последовательности, а if — позволяет выбирать элементы по условию.

Что-то тут не так ? Пункт «Работа с файлами» >>> testfile = open(r’/home/test/testFile.txt’, ‘w’) >>> mylist = [‘This’, ‘is’, ‘Sparta!’] >>> >>> testfile.close() >>> testfile = open(r’/home/test/testFile.txt’) >>> test = pickle.load(testfile) Traceback (most recent call last): File «», line 1, in File «/usr/lib/python2.7/pickle.py», line 1378, in load return Unpickler(file).load() File «/usr/lib/python2.7/pickle.py», line 858, in load dispatch[key](self) File «/usr/lib/python2.7/pickle.py», line 880, in load_eof raise EOFError EOFError >>>

Нврн, лучше делать так:

Рекомендую курсы программирвоания на python imprium

Анатолий, не понравился мне дизайн сайта с вашими курсами. Поэтому убрал прямую ссылку. Если я не прав, и содержание хорошее — пришлите мне доступ. Возможно размещу ссылку, если увижу, что хороший материал.

От куда ты столько знаешь

Максим, это всего лишь перевод. Но если вы интересуетесь Python, возможно это понравится: https://www.youtube.com/watch?v=OSGv2VnC0go

Привет, Сергей! Отличные статьи. Но вот с листингом беда: «` for number in rangelist: # Check if number is one of # the numbers in the tuple. if number in (3, 4, 7, 9): # «Break» terminates a for without # executing the «else» clause. break else: # «Continue» starts the next iteration # of the loop. It’s rather useless here, # as it’s the last statement of the loop. continue else: # The «else» clause is optional and is # executed only if the loop didn’t «break». pass # Do nothing «` Посмотри код выше и исправь в статье, если ты конечно заинтересован в качестве страниц на этом сайте.

Благодарю за обратную связь! :) А что не так с кодом? Вроде нормально всё, c отступами. Вставил в интерпретатор Python — тоже без проблем. Просто он ничего не делает, но так и задумано — это же просто пример синтаксиса Python.

📎📎📎📎📎📎📎📎📎📎