Роман Сузи - Язык программирования Python

Здесь есть возможность читать онлайн «Роман Сузи - Язык программирования Python» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Язык программирования Python: краткое содержание, описание и аннотация

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

Курс посвящен одному из бурно развивающихся и популярных в настоящее время сценарных языков программирования — Python. Язык Python позволяет быстро создавать как прототипы программных систем, так и сами программные системы, помогает в интеграции программного обеспечения для решения производственных задач. Python имеет богатую стандартную библиотеку и большое количество модулей расширения практически для всех нужд отрасли информационных технологий. Благодаря ясному синтаксису изучение языка не составляет большой проблемы. Написанные на нем программы получаются структурированными по форме, и в них легко проследить логику работы. На примере языка Python рассматриваются такие важные понятия как: объектно–ориентированное программирование, функциональное программирование, событийно–управляемые программы (GUI–приложения), форматы представления данных (Unicode, XML и т.п.). Возможность диалогового режима работы интерпретатора Python позволяет существенно сократить время изучения самого языка и перейти к решению задач в соответствующих предметных областях. Python свободно доступен для многих платформ, а написанные на нем программы обычно переносимы между платформами без изменений. Это обстоятельство позволяет применять для изучения языка любую имеющуюся аппаратную платформу.

Язык программирования Python — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Язык программирования Python», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

>>> s = "This is an example."

>>> lst = s.split(" ")

>>> print lst

['This', 'is', 'an', 'example.']

>>> s2 = "\n".join(lst)

>>> print s2

This

is

an

example.

Для проверки того, оканчивается ли строка на определенное сочетание букв, можно применить метод endswith():

>>> filenames = ["file.txt", "image.jpg", "str.txt"

>>> for fn in filenames:

... if fn.lower().endswith(".txt"):

... print fn

...

file.txt

str.txt

Поиск в строке можно осуществить с помощью метода find(). Следующая программа выводит все функции, определенные в модуле оператором def:

import string

text = open(string.__file__[:-1]).read()

start = 0

while 1:

found = text.find("def ", start)

if found == -1:

break

print text[found:found + 60].split("(")[0]

start = found + 1

Важным для преобразования текстовой информации является метод replace(), который рассматривается ниже:

>>> a = "Это текст , в котором встречаются запятые , поставленные не так."

>>> b = a.replace(" ,", ",")

>>> print b

Это текст, в котором встречаются запятые, поставленные не так.

Рекомендации по эффективности

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

Например, не рекомендуется многократно использовать операцию конкатенации для склеивания большого количества строк в одну. Лучше накапливать строки в списке, а затем с помощью join() собирать в одну строку:

>>> a = ""

>>> for i in xrange(1000):

... a += str(i) # неэффективно!

...

>>> a = "".join([str(i) for i in xrange(1000)]) # более эффективно

Конечно, если строка затем обрабатывается, можно применять итераторы, которые позволят свести использование памяти к минимуму.

Модуль StringIO

В некоторых случаях желательно работать со строкой как с файлом. Модуль StringIOкак раз дает такую возможность.

Открытие «файла» производится вызовом StringIO(). При вызове без аргумента — создается новый «файл», при задании строки в качестве аргумента — «файл» открывается для чтения:

import StringIO

my_string = «1234567890»

f1 = StringIO.StringIO()

f2 = StringIO.StringIO(my_string)

Далее с файлами f1и f2можно работать как с обычными файловыми объектами.

Для получения содержимого такого файла в виде строки применяется метод getvalue():

f1.getvalue()

Противоположный вариант (представление файла на диске в виде строки) можно реализовать на платформах Unix и Windows с использованием модуля mmap. Здесь этот модуль рассматриваться не будет.

Модуль difflib

Для приблизительного сравнения двух строк в стандартной библиотеке предусмотрен модуль difflib.

Функция difflib.get_close_matches()позволяет выделить nблизких строк к заданной строке:

get_close_matches(word, possibilities, n=3, cutoff=0.6)

где

word

Строка, к которой ищутся близкие строки.

possibilities

Список возможных вариантов.

n

Требуемое количество ближайших строк.

cutoff

Коэффициент (из диапазона [0, 1]) необходимого уровня совпадения строк. Строки, которые при сравнении с wordдают меньшее значение, игнорируются.

Следующий пример показывает функцию difflib.get_close_matches()в действии:

>>> import unicodedata

>>> names = [unicodedata.name(unicode(chr(i))) for i in range(40, 127)]

>>> print difflib.get_close_matches("LEFT BRACKET", names)

['LEFT CURLY BRACKET', 'LEFT SQUARE BRACKET']

В списке names— названия Unicode–символов с ASCII–кодами от 40 до 127.

Регулярные выражения

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

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

Для работы с регулярными выражениями в Python используется модуль re. В следующем примере регулярное выражение помогает выделить из текста все числа:

>>> import re

>>> pattern = r"[0–9]+"

>>> number_re = re.compile(pattern)

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Язык программирования Python»

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


Отзывы о книге «Язык программирования Python»

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

x