May 02, 2010 02:14
ПИТОН 2.5
#!/usr/bin/python
# -*- coding=utf-8 -*-
# Предыдущая волшебная строчка указывает на то,
# что файл в этой кодировке. Теперь я могу смело писать русские
# буковки в комментариях и прочих приятных местах
class SameDict(dict):
def __missing__(self, key):
return key
# Этот чудесный класс дополняет общечеловеческий dict так,
# что теперь обращение по ключу, которого нет, вернет сам ключ
enBig = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".decode("utf-8")
enSmall = "abcdefghijklmnopqrstuvwxyz".decode("utf-8")
ruBig = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ".decode("utf-8")
ruSmall = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя".decode("utf-8")
lowersymb = SameDict(map(lambda p, q: (p, q), enBig + ruBig, enSmall + ruSmall))
# тупо пишем оба алфавита, складываем, образуем словарь
Попробуйте, распечатайте, насладитесь результатом
def lower(thestr):
result = ""
for symb in thestr:
result += lowersymb[symb]
return result
# Вуаля. Можно пользоваться. Эта радость заменит все большие
# буквы и не тронет остальное, включая всякие там восклицательные
# знаки и семиколончики
регистр,
питон,
python,
decode,
lower