Питону не хватает `protected`

Мартин Фаулер говорит о двух подходах к проектированию наследования: четкая спецификация того, что можно наследовать из класса с запрещением остального, либо свободное разрешение делать с базовым классом все, что позволяет язык (в соответствии с "разрешающей позицией").

Свободный подход ругают за то, что наследник может сломать поведение самого базового класса, если перекрытых методах не сделает каких-то обязательных [...]

Дубликаты в списках в Питоне

3.10.06 23:15

Python

У меня периодически всплывает вопрос: как в Питоне удалить в списке дублирующиеся элементы (из [1, 2, 2, 3] получить [1, 2, 3]). Я знаю один способ-хак:

lst = dict([(item, None) for item in lst]).keys()

Здесь создается словарь из элементов списка в качестве ключей. Поскольку ключи в словаре уникальные, добавление дублирующих ключей ничего не меняет. Ну и потом [...]

Оператор `with` в Python 2.5

19.09.06 22:37

Delphi, Python

Только что прочитал у Pythy, что вышел Python 2.5. В нем много всего нового и змечательного, и что приятно, я даже не нашел на первый взгляд ничего, что вызвало бы отрицательную реакцию.

Но я больше всего рад появлению одной конкретной вещи -- оператора with.

Крайне случайный пароль

22.06.06 20:53

Python

... или "Зачем нужно бета-тестирование".

Недавно в поисках улучшения производительности своего музыкального сервиса перевел один из своих джанговских проектов с mod_python на FastCGI. Обе эти схемы по-разному реализуют одно и то же: постоянное нахождение в памяти загруженного приложения, чтобы не тратить время на его загрузку при каждом обращении. И обычно первый рекомендуют как наиболее простой вариант, [...]

Юникод в Питоне - странный повод для смеха

15.06.06 08:48

Python, Юникод

Юлик написал про свою любимую тему последнего времени -- юникод. На этот раз он предлагает посмеяться то ли над Trac, то ли над Django. То ли над "теми, кто считает что в Python хороший unicode support".

Python Markdown для вашего синтаксиса

20.04.06 10:12

Python

Предположим, вы пишете блог, форум или систему комментариев. То есть нечто, где пользователи будут писать много текста. И этот текст они хотят форматировать. Писать вручную HTML, как показывает практика, никому не нравится (никому -- это кроме нас, жалких 10-100 тысяч гиков). Значит остаются javascript'овые тулбарчики разной степени удобства и/или упрощенный текстовый синтаксис.

Контролируемое скачивание

В моем нынешнем проекте -- "Неком Музыкальном Сервисе" (о котором я еще, наверное, не раз напишу, уж не обссудьте) -- есть одно интересное требование, назвающееся "контролируемое скачивание", которое означает, что:

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

Это одна из тех вещей, которая отличает этот сервис от [...]

Обмен значениями переменных в Питоне

27.03.06 12:46

Python

Забавно иногда открывать для себя лаконичные способы делать что-то в синтаксисе нового языка. Сегодня возникла нужда поменять значения двух переменных, и я подумал, что традиционный способ:

temp = x x = y y = temp

... слишком длинен. Не может быть, чтобы в Питоне не было чего-нибудь покороче.

Неинициализированное состояние переменной

15.12.05 00:06

Python

Из серии "за что мне нравится Python"... Сегодня сформулировал у себя в голове еще одну приятную штуку.

Django и БД

9.12.05 00:16

Django, Python, Web

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