>>> import string
>>> s = "one,two,three"
>>> print string.split(s, ",")
['one', 'two', 'three']
>>> print s.split(",")
['one', 'two', 'three']
В версии Python 3.0 функции, которые доступны через методы, более не будут дублироваться в модуле string.
В Python 2.4 появилась альтернатива использованию операции форматирования: класс Template. Пример:
>>> import string
>>> tpl = string.Template("$a + $b = ${c}")
>>> a = 2
>>> b = 3
>>> c = a + b
>>> print tpl.substitute(vars())
2 + 3 = 5
>>> del c # удаляется имя c
>>> print tpl.safe_substitute(vars())
2 + 3 = $c
>>> print tpl.substitute(vars(), c=a+b)
2 + 3 = 5
>>> print tpl.substitute(vars())
Traceback (most recent call last):
File "/home/rnd/tmp/Python–2.4b2/Lib/string.py", line 172, in substitute
return self.pattern.sub(convert, self.template)
File "/home/rnd/tmp/Python–2.4b2/Lib/string.py", line 162, in convert
val = mapping[named]
KeyError: 'c'
Объект–шаблон имеет два основных метода: substitute()и safe_substitute(). Значения для подстановки в шаблон берутся из словаря ( vars()содержит словарь со значениями переменных) или из именованных фактических параметров. Если есть неоднозначность в задании ключа, можно использовать фигурные скобки при написании ключа в шаблоне.
В таблице ниже приведены некоторые наиболее употребительные методы объектов–строк и unicode–объектов.
| Метод |
Описание |
center(w) |
Центрирует строку в поле длины w |
count(sub) |
Число вхождений строки subв строке |
encode([enc[, errors]]) |
Возвращает строку в кодировке enc. Параметр errors может принимать значения « strict» (по умолчанию), « ignore», « replace» или « xmlcharrefreplace» |
endswith(suffix) |
Оканчивается ли строка на suffix |
expandtabs([tabsize]) |
Заменяет символы табуляции на пробелы. По умолчанию tabsize=8 |
find(sub [,start [,end]]) |
Возвращает наименьший индекс, с которого начинается вхождение подстроки subв строку. Параметры startи endограничивают поиск окном start:end, но возвращаемый индекс соответствует исходной строке. Если подстрока не найдена, возвращается –1 |
index(sub[, start[, end]]) |
Аналогично find(), но возбуждает исключение ValueErrorв случае неудачи |
alnum() |
Возвращает True, если строка содержит только буквы и цифры и имеет ненулевую длину. Иначе — False |
isalpha() |
Возвращает True, если строка содержит только буквы и длина ненулевая |
isdecimal() |
Возвращает True, если строка содержит только десятичные знаки (только для строк Unicode) и длина ненулевая |
isdigit() |
Возвращает True, если содержит только цифры и длина ненулевая |
islower() |
Возвращает True, если все буквы строчные (и их более одной), иначе — False |
isnumeric() |
Возвращает True, если в строке только числовые знаки (только для Unicode) |
isspace() |
Возвращает True, если строка состоит только из пробельных символов. Внимание! Для пустой строки возвращается False |
join(seq) |
Соединение строк из последовательности seqчерез разделитель, заданный строкой |
lower() |
Приводит строку к нижнему регистру букв |
lstrip() |
Удаляет пробельные символы слева |
replace(old, new[, n]) |
Возвращает копию строки, в которой подстроки oldзаменены new. Если задан параметр n, то заменяются только первые nвхождений |
rstrip() |
Удаляет пробельные символы справа |
split([sep[, n]]) |
Возвращает список подстрок, получающихся разбиением строки aразделителем sep. Параметр nопределяет максимальное количество разбиений (слева) |
startswith(prefix) |
Начинается ли строка с подстроки prefix |
strip() |
Удаляет пробельные символы в начале и в конце строки |
translate(table) |
Производит преобразование с помощью таблицы перекодировки table, содержащей словарь для перевода кодов в коды (или в None, чтобы удалить символ). Для Unicode–строк |
translate(table[, dc]) |
То же, но для обычных строк. Вместо словаря — строка перекодировки на 256 символов, которую можно сформировать с помощью функции string.maketrans(). Необязательный параметр dcзадает строку с символами, которые необходимо удалить |
upper() |
Переводит буквы строки в верхний регистр |
В следующем примере применяются методы split()и join()для разбиения строки в список (по разделителям) и обратное объединение списка строк в строку
Читать дальше
Конец ознакомительного отрывка
Купить книгу