← All posts tagged Python

class ShittyClass(Deferred):
def __init__(self,fuck):
Deferred.__init__(self)
def real_init(self,data):
self.val = data
return self
d = do_some_asynchronous_shit_with_fuck(fuck)
d.addCallback(real_init)
d.chainDeferred(self)

теперь в инлайнколбэкс коде можно создавать объекты с помощью
shitobj = yield ShittyClass('ololo')
я объебос, да

ИЗ АМЕРИКАШКИ СВЯЗЬ ДО ГЕРМАШКИ НАДЕЖНЕЕ ЧЕМ ИЗ РАШКИ. Стабильные 10% лоссей где-то между ростелекомом и хецнером. НЯШЫ БЛЕАДЬ.
Из-за этих няш я двое суток выяснял почему hgweb страницы отдает то с тормозами то без, то отдает до конца, то залипает на середине.
Перетряс меркуриал, перетряс варниш, поставил fapws, написал патч к fapws, добился того чтобы этот патч приняли в апстрим.
Сегодня обнаружил похожее поведение за moinmoin. Охуел. Пинал моин. Снова теребил варниш. Потом попробовал погонять запросы не из дома, а с впс у vdsplanet.ru.
Понял, что запросы оттуда проходят нормально. Решил попинговать из дома. Охуел. Блевал. ЖЕЛАЛ УБИВАТЬ.

#!/usr/bin/env python3
"""B ЛЮБOM ДOME 3MEЮ HANДN TPETЬЮ
CЛOBA EN HA3OBN MAГNЧECKNE"""
from \
sys \
import \
stdin, \
argv
БE3YMHЫE_OHA_ПOKAЖET_3HAKN = {
"А": "A",
"В":"B", "Е":"E",
"З":"3","И":"N",
"Й":"N", "К":"K",
"М":"M","Н":"H","О":"O",
"Р":"P","С":"C","Т":"T","У":"Y",
"Х":"X","Ш":
"W","Я":
"R"
} # CONДEWЬ C YMA ПPOЧTR
БE3HOГNM = lambda ATNC: БE3YMHЫE_OHA_ПOKAЖET_3HAKN.get(ATNC, ATNC)
YBNДNWЬ_YЖAC_N = open(argv[1]) if len(argv)-1 else stdin
# БEГN ПOKA БE3HOГNM
print(''.join(map(БE3HOГNM,
# HE CЛYWAN CЛOBA MAГNЧECKNE
YBNДNWЬ_YЖAC_N.read().upper())))
# БEГN OT TEKCTA CTPAWHOГO

Захотел поискать парсер/генератор S-выражений для бидона и нечаянно наткнулся на ЭТО: packages.python.org Я думаю, даже твоего, жуйк, воображения не хватит чтобы представить количество кирпичей которые я породил глядя на это ._. Оно работает! Только вот генераторные выражения сделать нельзя, фор только в верхнем уровне функций и модулей разрешается. Разве что использовать map.

ПИТОН — ОЧЕНЬ ЧИТАБЕЛЬНЫЙ ЯЗЫК, В ОТЛИЧИЕ ОТ ПЕРЛА. БЛАГОДАРЯ ОТСТУПАМ ЭТОТ ЯЗЫК ЗАСТАВЛЯЕТ ПРОГРАММИСТА ФОРМАТИРОВАТЬ КОД, ЧТО АВТОМАТИЧЕСКИ ПОВЫШАЕТ ЕГО ЧИТАБЕЛЬНОСТЬ.
stil@sirius /tmp % dd if=/dev/urandom bs=512 count=1K|python -c 'y={};print "".join( [y.__setitem__("y",chr(ord(x)%128)),y["y"] if ord(y["y"])>31 else ""][1] for x in "".join(raw_input() for x in xrange(20)))'
5y+,.3,{a!L#E%uQz$vNJ{;\{PZ/[KDV@U$G`:yer9"reS+qS WEU_\Gj%p2nA#( jJ{b!Srarm*F Cu2Rw&F:)3@%0b|f+r-~IN0!v,iMN`DQq64p!~OJ1z!,: %73j\]x_ms +(p8Y;F+tZ{q1U UBeXz_@[ F+5Su+h-(lqtWAo[Snsw{M}"o;<=VP{JDp#GsUw>ggaN9(hL;mF1$\1fO5q0P_hMuoN}\A#\L"cn#m`[kz9AD};f]<:Gr@/}LaTL1cI]TO>6go%wS\vT!|)( W$]}u@LAB }I5>[rg`$i '+fn*]y~#OrGcNvK(.U4\ECQ),M40f_XkHxZ0"Vtp58uMDNdz -~?TJ`?XOFW^VS/f9}xFTaDTkbvizpR'kSVkbg Vt1M/N{TY@Un6d#^H"<MVJe,$+VoXF]Q/89Wudc!H;$g9d'*4LD4>3e-8VEH_r'agqBg2|=8>PH@B19}Gh,kJ{t C=p4wSip[t+:~&|T:<k3?_q~.N&%OO-^z'-R#=<"@rzqK8a3e(1(6:~}uTQz`{GWdC2^&["uEehT[rKM*S:,rvj%_wrwW?jM]N0JstZy`VRz{I7mmQq:?yN_E'roae*w+S<KI(fGmnl{l.8FoW#uo/M1bV a;===M@xe$yjHNm}L88f\l(|-[R+aOgUWIIxi~B];)mAbNee!jrt7Ta*xAm7Io\:R0_YL&g}kx;V;58f2j@T`[q6qG[,n@a$3EqNOmF@)Yn{_ctq1w~OZx*NNw62/`@#NM??-g -7>+--/=L,8v<pHc)#T1Hj};g<4URk1(} F%]22EU<6;|Uj9oJUi@^b.ilhD3C%SD_FPh>9qbE,&F>j -W${;l*b.1:c-oR$$z@A$=7C$UHuQ[Pp+<?1Gq1Qf:]5oWCs^Jf'\o?Y,SLW?8$4Q&R*t[z)ph9iE[wyFD>>M;{RZ'/q4 JACKE[D9:6&!R{1<nA[KBF;(Qw7;@U6*W},"+7LWZTk**w+~[dR!i q`boH+">z+_bd2]VQ{>@G#PA&

HOLY PYTHON POWER FTW

Я придумал. Завтра я накатаю костыль, который выберет среди анимца нового сезона то анимцо, где наиболее винрарные сейю. И всё. Обычно это ок способ выбора (ну и руками порыться в результате ничто не мешает)

Наткнулся на багу в твистеде (http://twistedmatrix.com/trac/ticket/4520): [Failure instance: Traceback: : exceptions must be classes, or instances, not type /usr/lib/python2.6/site-packages/twisted/internet/defer.py:307:errback /usr/lib/python2.6/site-packages/twisted/internet/defer.py:354:_startRunCallbacks /usr/lib/python2.6/site-packages/twisted/internet/defer.py:371:_runCallbacks /usr/lib/python2.6/site-packages/twisted/internet/defer.py:879:gotResult --- --- /usr/lib/python2.6/site-packages/twisted/internet/defer.py:821:_inlineCallbacks /usr/lib/python2.6/site-packages/twisted/python/failure.py:338:throwExceptionIntoGenerator site.py:59:respond /usr/lib/python2.6/site-packages/twisted/internet/defer.py:821:_inlineCallbacks /usr/lib/python2.6/site-packages/twisted/python/failure.py:338:throwExceptionIntoGenerator ] Уже 2 месяца прошло, а её не чинят :/

[Failure instance: Traceback: : global name 'fuck' is not defined /home/stil/git/private/bsr_shortstat/tornado/web.py:685:_execute /home/stil/git/private/bsr_shortstat/tornado/web.py:774:wrapper site.py:48:get /usr/lib/python2.6/site-packages/twisted/internet/defer.py:944:unwindGenerator --- --- /usr/lib/python2.6/site-packages/twisted/internet/defer.py:823:_inlineCallbacks site.py:57:respond ]

сраные выблядки закона мура развращенные характеристиками современных машин. да, сучечка, сейчас на десктопах гигабайты памяти. да, она сейчас стоит дешево. но конский хуй тебя проткни от пяток до макушки, это не значит, что надо ВСЕ ДЕЛАТЬ В ПАМЯТИ И ЖРАТЬ ЕЁ ГИГАБАЙТАМИ ПРОСТО ЧТОБЫ СКОМПИЛИРОВАТЬ ПИДОРСКОЕ ПОДЕЛИЕ УЕБАНОВ ПИТОНОРАСТОВ