Публикации о языке Python   страница 460

Python-cjson: быстрая реализация json парсера

Быстрая реализация json парсера на C++ с удобным и понятным синтаксисом.[>>>]
Код выглядит так:

import re
import cjson
import datetime
# Encoding Date objects:
def dateEncoder(d):
    assert isinstance(d, datetime.date)
    return 'new Date(Date.UTC(%d,%d,%d))'%(d.year, d.month, d.day)
json=cjson.encode([1,datetime.date(2007,1,2),2], extension=dateEncoder)
assert json=='[1, new Date(Date.UTC(2007,1,2)), 2]'
# Decoding Date objects:
re_date=re.compile('^new\sDate\(Date\.UTC\(.*?\)\)')
def dateDecoder(json,idx): json=json[idx:] m=re_date.match(json)
    if not m: raise 'cannot parse JSON string as Date object: %s'%json[idx:] args=cjson.decode(



Python и кодировки

Сначала ссылка - самое подробное рассмотрение проблем кодировок и юникода в питоне. Внятно, но по аглицки [>>>]
Теперь от себя - у меня есть код, который мигрирует из проекта в проект последние 2 года. Он позволяет забыть про проблемы кодировок на какое-то время. Выглядит он примерно так:

import locale, codecs; locale.setlocale(locale.LC_ALL, '')
# Теперь в encoding положим текущая кодировку локали.
encoding = locale.getlocale()[1]
# Если кодировка не определилась - это винды. Там полюбому UTF-8 :)
if not encoding:
    encoding = "utf-8"
# Установим дефолтную локаль. Фин



Python и кодировки

Сначала ссылка - самое подробное рассмотрение проблем кодировок и юникода в питоне. Внятно, но по аглицки [>>>]
Теперь от себя - у меня есть код, который мигрирует из проекта в проект последние 2 года. Он позволяет забыть про проблемы кодировок на какое-то время. Выглядит он примерно так:

#!/usr/bin/env python2.5
# -*- coding: utf-8 -*-
# Конечно в нормальной жизни этих коментариев тут нет
# Загрузить кодеки и библиотеку локалей, установить дефолтную локаль согласно
# переменной окружения LC_ALL.
import locale, codecs; locale.setlocale(locale.LC_ALL, '')
# Теперь в encoding положим текущая кодировку локали.
encoding = locale.getlocale()[1]
# Если кодировка не определилась - это винды. Там полюбому UTF-8 :)
if not encoding:
    encoding = "utf-8"
# Установим дефолтную



NamedTuple: новое в python2.6

Смотрите какая красота появилась в python2.6a1 [>>>]
Используется примерно так:

from collections import NamedTuple
Point = NamedTuple(‘Point’, ‘x y’)
p = Point(10, 5)
print p.x # напечатает 10
print p.y # напечатает полюбому 5



NamedTuple: новое в python2.6

Смотрите какая красота появилась в python2.6a1 [>>>]
Используется примерно так:

from collections import NamedTuple
Point = NamedTuple(‘Point’, ‘x y’)
p = Point(10, 5)
print p.x # напечатает 10
print p.y # напечатает полюбому 5



ActiveState Python 2.5

Обновился ActiveState - долгожданный переезд на ветку 2.5. Для диких, это одна из сборок python под все платформы, главное конечно под Windows. Включает в себя в том числе и кучу библиотек для работы с Win32 API и, что не менее важно, пачку документации на родном английском языке. [>>>]



ActiveState Python 2.5

Обновился ActiveState - долгожданный переезд на ветку 2.5. Для диких, это одна из сборок python под все платформы, главное конечно под Windows. Включает в себя в том числе и кучу библиотек для работы с Win32 API и, что не менее важно, пачку документации на родном английском языке. [>>>]



xmlobjects: еще одна парадигма для xml раппинга

XMLOjbects для питона и xml это как ORM для баз данных [>>>]

По сути своей это оболочка вокруг ElementTree, красивая такая, обектная. Доступ к тегам и пропертям осуществляется через map.




xmlobjects: еще одна парадигма для xml раппинга

XMLOjbects для питона и xml это как ORM для баз данных [>>>]

По сути своей это оболочка вокруг ElementTree, красивая такая, обектная. Доступ к тегам и пропертям осуществляется через map.




DjangoSnippets

DjangoSnippets. Джанго Сниппетс. Еще раз - Джанго Снипетс. Полезные снипеты для всех кто пишет на джанге [>>>]. В закладки полюбому.