Посты с тэгом library


Разукрашиваем вывод в консоли: теория и практика


Консоль привлекает многих своей минималистичностью и эстетикой, но даже в ней иногда хочется выделить определённый фрагмент, чтобы показать его роль или значимость. Например, отметить зелёным текстом сообщение об успешном выполнении операции или обозначить длинный текст ошибки курсивом. О том, как это делать, а также о реализации на питоне — читайте далее.

Читать дальше →


Логирование в телеграмм, или история о том, как я сделал питон библиотеку

Модуль logging в питоне - это мощный инструмент в разработки. Он помогает отследить ошибки, наблюдать за работой приложения и даже собирать статистику об использовании вашего сервиса. В этой статье я расскажу, как можно расширить возможности этого модуля и причем тут телеграмм.

Читать далее


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('[%s]'


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(