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 12:21 | Bezpečnostní upozornění
Byl vydán Mozilla Firefox 40.0.3. Řešeny jsou především dva bezpečnostní problémy MFSA 2015-94 (CVE-2015-4497) a MFSA 2015-95 (CVE-2015-4498). Bezpečnostní problém MFSA 2015-94 je kritický. Webová stránka obsahující škodlivý kód může způsobit pád Firefoxu, nebo také spuštění libovolného kódu s právy uživatele spouštějícího Firefox. Bezpečnostní problémy byly opraveny také ve verzi s prodlouženou podporou ESR 38.2.1. Aktualizace jsou k dispozici (Red Hat Enterprise Linux, Fedora, Ubuntu, ...).
Ladislav Hagara | Komentářů: 2
dnes 11:11 | Komunita
Už jenom do pondělí 31. srpna lze přihlásit přednášku nebo workshop, nebo také navrhnout zajímavé téma, na konferenci LinuxDays, jež proběhne 10. a 11. října 2015 v Praze v areálu ČVUT v Dejvicích.
Ladislav Hagara | Komentářů: 0
dnes 01:56 | Zajímavý článek
Vyšlo (pdf) sedmatřicáté číslo anglicky psaného časopisu MagPi věnovanému Raspberry Pi a projektům postaveným na tomto jednodeskovém počítači. Podruhé na 100 stránkách a také jako papírový časopis za 5,99 £.
Ladislav Hagara | Komentářů: 0
dnes 01:01 | Nová verze
Byla vydána první beta verze Ubuntu 15.10 s kódovým názvem Wily Werewolf. Ke stažení jsou obrazy Kubuntu, Lubuntu, Ubuntu GNOME, Ubuntu Kylin, Ubuntu MATE, Xubuntu a Ubuntu Cloud.
Ladislav Hagara | Komentářů: 0
dnes 01:00 | Komunita
Byly zveřejněny (YouTube) videozáznamy přednášek z letošní konference Flock (Fedora Contributor Conference) konané 12. až 15. srpna v Rochesteru (New York).
Ladislav Hagara | Komentářů: 0
včera 11:11 | Zajímavý software
Společnost Unity Technologies dle plánu (zprávička) vydala experimentální verzi Unity Editoru pro Linux. Počítačové hry postavené nad multiplatformním herním enginem Unity je tak možné nejenom hrát, ale už také vyvíjet na Linuxu. Dotazy a zpětná vazba na oficiálním fóru.
Ladislav Hagara | Komentářů: 3
včera 10:20 | Nová verze
Vyšla verze 5.4.0 prostředí KDE Plasma. Novinky zahrnují optimalizace výkonu, nový nástroj pro nastavení hlasitosti zvuku, rozšíření sady ikon Breeze mj. o ikony pro rozšířené aplikace v GTK (např. Firefox nebo Inkscape), návrat vyhledávání v historii KRunneru aj. Více v kompletním seznamu změn.
Troll, MBA | Komentářů: 44
23.8. 15:15 | Zajímavý článek
GitHub na svém blogu zveřejnil vývoj popularity programovacích jazyků používaných na GitHubu v letech 2008 až 2015. Použité programovací jazyky ve veřejných i soukromých repozitářích byly rozpoznávány pomocí open source knihovny Linguist. V současné době je na GitHubu nejpopulárnějším programovacím jazykem JavaScript. Na dalších místech jsou Java, Ruby, PHP, Python, ...
Ladislav Hagara | Komentářů: 149
23.8. 11:03 | Zajímavý projekt
Vyšla první alfa verze bezpečné distribuce Androida založené na CyanogenModu: Copperhead OS. Copperhead OS staví bezpečnost na první místo, je nezávislý na Google službách, má hardened kernel i userspace (PaX, ASLR, hardened Bionic libc, atd.), bude poskytovat pravidelné a rychlé bezpečnostní OTA updaty, podporuje secure boot s dm-verity, odděluje šifrovací heslo od hesla zámku obrazovky. Z telefonů je zatím podporován Google Nexus 5 a Samsung Galaxy S4.
xm | Komentářů: 54
22.8. 21:02 | Komunita
Roman Nguyen zveřejnil na Behance Ubuntu 16.04 Stupendously Hot Charmander concept svůj grafický návrh prostředí Ubuntu. Návrh vytvořený jen tak pro zábavu zaujal celou řadu uživatelů Ubuntu (Google+, reddit). Na GitHubu tak vznikl projekt, jehož cílem je z návrhu vytvořit instalovatelné téma.
Ladislav Hagara | Komentářů: 46
Nešifrované HTTP
 (4%)
 (96%)
Celkem 6265 hlasů
 Komentářů: 64, poslední dnes 16:35
Rozcestník
Reklama
Autoškola testy online Levný benzín

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

30.5.2008 17:58 | Přečteno: 1110× | 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: 22 | 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   Powered by Hosting 90 Server hosting
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.