Роман Сузи - Язык программирования Python
- Название:Язык программирования Python
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Роман Сузи - Язык программирования Python краткое содержание
Курс посвящен одному из бурно развивающихся и популярных в настоящее время сценарных языков программирования — Python. Язык Python позволяет быстро создавать как прототипы программных систем, так и сами программные системы, помогает в интеграции программного обеспечения для решения производственных задач. Python имеет богатую стандартную библиотеку и большое количество модулей расширения практически для всех нужд отрасли информационных технологий. Благодаря ясному синтаксису изучение языка не составляет большой проблемы. Написанные на нем программы получаются структурированными по форме, и в них легко проследить логику работы. На примере языка Python рассматриваются такие важные понятия как: объектно–ориентированное программирование, функциональное программирование, событийно–управляемые программы (GUI–приложения), форматы представления данных (Unicode, XML и т.п.). Возможность диалогового режима работы интерпретатора Python позволяет существенно сократить время изучения самого языка и перейти к решению задач в соответствующих предметных областях. Python свободно доступен для многих платформ, а написанные на нем программы обычно переносимы между платформами без изменений. Это обстоятельство позволяет применять для изучения языка любую имеющуюся аппаратную платформу.
Язык программирования Python - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
>>> 008
File "", line 1
008
^
SyntaxError: invalid token
Тип float
Соответствует C–типу double
для используемой архитектуры. Записывается вполне традиционным способом либо через точку, либо в нотации с экспонентой:
>>> pi = 3.1415926535897931
>>> pi ** 40
7.6912142205156999e+19
Кроме арифметических операций, можно использовать операции из модуля math
.
Для финансовых расчетов лучше применять более подходящий тип.
Из полезных встроенных функций можно вспомнить round()
, abs()
.
Тип complex
Литерал мнимой части задается добавлением j
в качестве суффикса (перемножаются мнимые единицы):
>>> -1j * -1j
(-1–0j)
Тип реализован на базе вещественного. Кроме арифметических операций, можно использовать операции из модуля cmath
.
Тип bool
Подтип целочисленного типа для «канонического» обозначения логических величин. Два значения: True
(истина) и False
(ложь) — вот и все, что принадлежит этому типу. Как уже говорилось, любой объект Python имеет истинностное значение, логические операции можно проиллюстрировать с помощью логического типа:
>>> for i in (False, True):
... for j in (False, True):
... print i, j, ":", i and j, i or j, not i
...
...
False False : False False True
False True : False True True
True False : False True False
True True : True True False
Следует отметить, что Python даже не вычисляет второй операнд операции and
или or
, если ее исход ясен по первому операнду. Таким образом, если первый операнд истинен, он и возвращается как результат or
, в противном случае возвращается второй операнд. Для операции and
все аналогично.
Тип string и тип unicode
В Python строки бывают двух типов: обычные и Unicode–строки. Фактически строка — это последовательность символов (в случае обычных строк можно сказать «последовательность байтов»). Строки–константы можно задать в программе с помощью строковых литералов. Для литералов наравне используются как апострофы ( '
), так и обычные двойные кавычки ( "
). Для многострочных литералов можно использовать утроенные апострофы или утроенные кавычки. Управляющие последовательности внутри строковых литералов задаются обратной косой чертой ( \
). Примеры написания строковых литералов:
s1 = "строка1"
s2 = 'строка2\nс переводом строки внутри'
s3 = """строка3
с переводом строки внутри"""
u1 = u'\u043f\u0440\u0438\u0432\u0435\u0442' # привет
u2 = u'Еще пример' # не забудьте про coding!
Для строк имеется еще одна разновидность: необработанныестроковые литералы. В этих литералах обратная косая черта и следующие за ней символы не интерпретируются как спецсимволы, а вставляются в строку «как есть»:
my_re = r"(\d)=\1"
Обычно такие строки требуются для записи регулярных выражений (о них пойдет речь в лекции, посвященной обработке текстовой информации).
Набор операций над строками включает конкатенацию« +
», повтор" *
", форматирование" %
". Также строки имеют большое количество методов, некоторые из которых приведены ниже. Полный набор методов (и их необязательных аргументов) можно получить в документации по Python.
>>> "A" + "B"
'AB'
>>> "A"*10
'AAAAAAAAAA'
>>> "%s %i" % ("abc", 12)
'abc 12'
Некоторые методы строковых объектов будут рассмотрены в лекции, посвященной обработке текстов.
Тип tuple
Для представления константной последовательности (разнородных) объектов используется тип кортеж. Литерал кортежа обычно записывается в круглых скобках, но можно, если не возникают неоднозначности, писать и без них. Примеры записи кортежей:
p = (1.2, 3.4, 0.9) # точка в трехмерном пространстве
for s in "one", "two", "three": # цикл по значениям кортежа
print s
one_item = (1,)
empty = ()
p1 = 1, 3, 9 # без скобок
p2 = 3, 8, 5, # запятая в конце игнорируется
Использовать синтаксис кортежей можно и в левой части оператора присваивания. В этом случае на основе вычисленных справа значений формируется кортеж и связывается один в один с именами в левой части. Поэтому обмен значениями записывается очень изящно:
a, b = b, a
Тип list
В «чистом» Python нет массивов с произвольным типом элемента. Вместо них используются списки. Их можно задать с помощью литералов, записываемых в квадратных скобках, или посредством списковых включений. Варианты задания списка приведены ниже:
lst1 = [1, 2, 3,]
lst2 = [x**2 for x in range(10) if x % 2 == 1]
lst3 = list("abcde")
Для работы со списками существует несколько методов, дополнительных к тем, что имеют неизменчивые последовательности. Все они связаны с изменением списка.
Последовательности
Ниже обобщены основные методы последовательностей. Следует напомнить, что последовательности бывают неизменчивыми и изменчивыми. У последних методов чуть больше.
Синтаксис | Семантика |
---|---|
len(s) |
Длина последовательности s |
x in s |
Проверка принадлежности элемента последовательности. В новых версиях Python можно проверять принадлежность подстроки строке. Возвращает True или False |
x not in s |
= not x in s |
s + s1 |
Конкатенация последовательностей |
s*n или n*s |
Последовательность из n раз повторенной s . Если n < 0 , возвращается пустая последовательность. |
s[i] |
Возвращает i –й элемент s или len(s)+i –й, если i < 0 |
s[i:j:d] |
Срез из последовательности s от i до j с шагом d будет рассматриваться ниже |
min(s) |
Наименьший элемент s |
max(s) |
Наибольший элемент s |
Дополнительные конструкции для изменчивых последовательностей:
s[i] = x |
i –й элемент списка s заменяется на x |
s[i:j:d] = t |
Срез от i до j (с шагом d ) заменяется на (список) t |
del s[i:j:d] |
Удаление элементов среза из последовательности |
В таблице приведен ряд методов изменчивых последовательностей (например, списков).
Метод | Описание |
---|---|
append(x) |
Добавляет элемент в конец последовательности |
count(x) |
Считает количество элементов, равных x |
extend(s) |
Добавляет к концу последовательности последовательность |
index(x) |
Возвращает наименьшее i , такое, что s[i] == x . Возбуждает исключение ValueError , если x не найден в s |
insert(i, x) |
Вставляет элемент x в i –й промежуток |
pop(i) |
Возвращает i –й элемент, удаляя его из последовательности |
reverse() |
Меняет порядок элементов s на обратный |
sort([cmpfunc]) |
Сортирует элементы s . Может быть указана своя функция сравнения cmpfunc |
Здесь же следует сказать несколько слов об индексировании последовательностей и выделении подстрок (и вообще — подпоследовательностей) по индексам. Для получения отдельного элемента последовательности используются квадратные скобки, в которых стоит выражение, дающее индекс. Индексы последовательностей в Python начинаются с нуля. Отрицательные индексы служат для отсчета элементов с конца последовательности ( -1
— последний элемент). Пример проясняет дело:
Интервал:
Закладка: