abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 15:44 | Zajímavý článek

Kariérní portál Dice.com (Wikipedie) ve spolupráci s konsorciem Linux Foundation zveřejnil 2016 Open Source Jobs Report (infografika). Zpráva potvrzuje, že poptávka po odbornících na open source neustále roste.

Ladislav Hagara | Komentářů: 0
dnes 15:11 | Bezpečnostní upozornění

V Linuxu 4.4.0 a vyšších byla nalezena a opravena bezpečnostní chyba v eBPF zneužitelná k lokální eskalaci práv. Jádro 4.4.0 je obsaženo například v nejnovějším Ubuntu 16.04 [reddit].

Ladislav Hagara | Komentářů: 1
včera 01:11 | Zajímavý článek

Dle článku na stránkách Blenderu byl tento svobodný software pro modelování a vykreslování 3D počítačové grafiky a animací použit pro tvorbu visuálních efektů (VFX) ve filmu Hardcore Henry (Wikipedie, ČSFD). Část peněz potřebných na dokončení tohoto filmu natočeného z pohledu hlavního hrdiny, pomocí digitálních kamer GoPro, byla získána díky kampani na Indiegogo.

Ladislav Hagara | Komentářů: 24
včera 01:11 | Zajímavý projekt

Po rychlém vyprodání první várky 500 "early birds" LimeSDR za $199 byla přidána druhá várka 500 "early birds" za zvýhodněnou cenu $249. Lidé, kteří si mezi tím objednali LimeSDR za plnou cenu $299, byli automaticky přesunuti do kategorie "early birds", takže nebudou platit více. V tuto chvíli zbývá ještě 467 "early birds".

xm | Komentářů: 6
4.5. 20:00 | Zajímavý software

Converse.js je open source XMPP (Extensible Messaging and Presence Protocol) klient napsaný v JavaScriptu. JC Brand dnes vydal verzi 1.0.0.

Ladislav Hagara | Komentářů: 3
4.5. 17:20 | Komunita

Od 3. do 5. května probíhá Ubuntu Online Summit (UOS May 2016). V úvodní přednášce bylo například sděleno, že Unity 8 nebude výchozím prostředím ani v Ubuntu 16.10. Dnes ve 20:00 bude v rámci summitu Mark Shuttleworth odpovídat na otázky kolem Ubuntu a open source.

Ladislav Hagara | Komentářů: 0
4.5. 15:00 | Nová verze

Opera 37, verze 37.0.2178.32, byla prohlášena za stabilní. Nejnovější verze tohoto webového prohlížeče je postavena na Blinku 50 a přináší například integrovaný blokátor reklam nebo možnost přehrávání videí mimo okna prohlížeče.

Ladislav Hagara | Komentářů: 3
3.5. 21:42 | Bezpečnostní upozornění

V balíku programů sloužících ke konverzi a úpravám obrázků ImageMagick bylo nalezeno několik bezpečnostních chyb (CVE-2016–3714). K funkcím knihovny ImageMagick se často přistupuje například z PHP (imagick), Ruby (rmagick a paperclip) nebo Node.js (imagemagick). Případný útočník tak může chyb využít až ke vzdálenému spouštění kódů. Další informace postupně na ImageTragick [reddit].

Ladislav Hagara | Komentářů: 0
3.5. 16:30 | Nová verze

Dle plánu (zprávička) byly vydány verze 1.0.2h a 1.0.1t kryptografické knihovny OpenSSL. Opraveno je několik bezpečnostních problémů.

Ladislav Hagara | Komentářů: 0
3.5. 16:03 | Komunita

Internetový vyhledávač DuckDuckGo věnoval 225 tisíc dolarů na podporu svobodného a otevřeného softwaru (FOSS). Po 25 tisících dolarů dostalo 9 organizací: Freedom of the Press Foundation, Freenet Project, OpenBSD Foundation, CrypTech Project, Tor Project, Fight for the Future, Open Source Technology Innovation Fund, Riseup Labs a GPGTools.

Ladislav Hagara | Komentářů: 0
Jaký poměr stran pracovní plochy (příp. složené z více monitorů) preferujete?
 (7%)
 (14%)
 (52%)
 (20%)
 (4%)
 (2%)
 (1%)
Celkem 259 hlasů
 Komentářů: 18, poslední 2.5. 20:12
Rozcestník
Reklama

Mám python ještě radši než dřív.

30.5.2008 17:58 | Přečteno: 1115× | poslední úprava: 30.5.2008 18:04

Dalsí kousek pythoního kódu, na který jsem pyšný.

Nejsem pyšný na sebe, nejde o nic složitého ani objevného. Jsem pyšný na python, protože jsem zase jednou zjistil že jsem neudělal chybu, když jsem se vybodnul na Javu.

O co jde ? Potřebuji předem neznámou datovou strukturu serializovat do ekvivalentního pythoního kódu. Není to žádná raketová věda, ale čekal jsem spoustu otravování s tím, aby byl výsledek syntakticky košer, aby to pobralo vnořené struktury, aby se to dalo snadno rozšiřovat o nové datové typy. Když jsem se konečně přinutil přestat "psát Céčko v pythonu" a začal "přemýšlet v pythonu", vyplynulo to samo, s jednoduchostí a samozřejmostí, která mi ještě ted bere dech.

# convert data to code
import types

data2code = {
    types.DictType: lambda x: "{" + ", ".join(["%s: %s" % (textualize(k), textualize(v)) for k,v in x.items()]) + "}",
    types.TupleType: lambda x: "(" + ("".join([ textualize(i)+", " for i in x ])) + ")",
    types.ListType: lambda x: "[" + (", ".join([ textualize(i) for i in x ])) + "]",
    types.StringType: lambda x: '"%s"' % x,
    types.UnicodeType: lambda x: '"%s"' % x,
    types.IntType: lambda x: str(x),
    types.BooleanType: lambda x: str(x),
    types.NoneType: lambda x: "None",
}

# shorthand for converting of given val
def textualize(val):
    return data2code[type(val)](val)
       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

30.5.2008 18:51 spang
Rozbalit Rozbalit vše Re: Mám python ještě radši než dřív.
Ehhh, znáš funkci repr() ?
repr(object)

Return a string containing a printable representation of an object. This is the same value yielded by conversions (reverse quotes). It is sometimes useful to be able to access this operation as an ordinary function. For many types, this function makes an attempt to return a string that would yield an object with the same value when passed to eval().

rADOn avatar 30.5.2008 19:08 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Mám python ještě radši než dřív.
Znám, bohužel háček je v tom For many types. Součástí jsou i nestandartní data, jmenovitě xmlrpc/fastrpc typy a ty mají s implementací __repr__() vážný problém. Z kódu který jsem postnul jsem je pro jednoduchost vynechal.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
Nikola Ciprich avatar 30.5.2008 19:45 Nikola Ciprich | skóre: 23 | blog: NiX_blog | Bohumín
Rozbalit Rozbalit vše Re: Mám python ještě radši než dřív.
ty lambdy jsou tam trosku zbytecne, co takhle:

types.BooleanType: str

;)
Did you ever touch the starlight ? Dream for a thousand years? Have you ever seen the beauty Of a newborn century?
30.5.2008 23:38 CEST
Rozbalit Rozbalit vše Re: Mám python ještě radši než dřív.
Chapu to dobre, ze tahle funkce dela to same jako v perlu Data::Dumper nebo v PHP serialize? BTW: mas u toho retezce osetreny, kdyz bude obsahovat uvozovky?
1.6.2008 17:21 vlasta neubauer
Rozbalit Rozbalit vše Re: Mám python ještě radši než dřív.
nevím co dělá Perlovský Data::Dumper, ale v PHP jde s píše o ekvivalent funkce var_export(). serializace je trošku něco jiného. tady jde o konverzi na validní kód, ne o konverzi na 'prostý' text.

Založit nové vláknoNahoru

ISSN 1214-1267  
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.