Re: [python] OT: překlad pojmů "first-class o bject" a "stream object"
Hynek Fabian >Přikryl Petr (úterý 27 Duben 2010 09:41:46): >> ... "first-class objekt" ... >Mě v takových případech pomáhá párkrát výraz prohnat slovníkem tam a zpátky, >v tomto případě jsem skončil zhruba u „bezvadný“ nebo „úplný“ objekt. >Není to možná přesné, ale vyjadřuje to princip - že ostatní objekty jsou >nedokonalé. Problém je v tom, že to nemá vyjadřovat dokonalost či nedokonalost ostatních objektů. Jde o to, že je něco objektem, i když v jiných podmínkách (v jiných jazycích) to vlastnosti objektu mít nemusí. V tomto smyslu "prvotřídní" nebo "úplný" je divné. Opravdu nejvíc mi sedí "plnohodnotný", ale je otázka, jestli je to vhodný název pro pojem (plnohodnotný objekt). Taky se k tomu můžu postavit tak, že by to nebylo vnucováno jako kodifikovaný pojem, ale prostě jako srozumitelné vyjádření -- opis významu. >> >> "runtime context" >> Problém je v tom, že pojem runtime context je použit >> ve standardní dokumentaci. A mluví se tam i o správci >> kontextu (context manager) a o context management >> protokolu a je tam knihovna contextlib... >> >> Takže problém je s tím "runtime". >„provozní kontext“? „operační kontext“? "operační kontext" se mi velmi líbí. Myslím, že vystihuje velmi přesně, co se tím myslí. Díky, díky, díky. Petr P.S. Já to věděl: "Víc hlav, víc zelí." ;) ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] OT: překlad "syndication feeds"
Ahoj fšeci, Tohle by ale někdo mohl vědět. "syndication feeds" ...ve smyslu RSS. Tady vůbec netuším, jestli se tomu nějak česky říká. "Sdružené krmení" nenavrhujte ani náhodou :) P. P.S. Pořád platí http://blog.nic.cz/2010/03/25/pomozte-nam-s-prekladem-knihy-dive-into-python-3/ ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] "first-class object"
Tovim >objekt první třídy, vagon první třídy, >porod první třídy, pohřeb první třídy >mi přijdou jako normální česká spojení; >v obráceném gardu to může být o něčem jiném: >vagon první třídy nemusí být nutně vagonem prvotřídním No, to je trochu filosofická a matematická záležitost. Třída vymezuje věci s podobnými vlastnostmi. V tomto smyslu by měl být podle vagón první třídy také vagónem prvotřídním (podle definice). Že se záměr neslučuje s realitou, to už je jiná věc. Pak taky může být "paní učitelka první třídy", která je možná prvotřídní, možná učí v první třídě a možná obojí. Tím chci naznačit, že "objekt první třídy" může v textu zavést podobné zmatky, jako ona paní učitelka. Jakmile se tam vyskytnou dvě třídy a začne se mluvit o funkci (jako o "first-class" objektu) slovy "tato funkce je objektem první třídy), pak si někteří mohou myslet, že se bude vztahovat k třídě A. Fakt je, že prvotřídní objekt může být chápán jako "velmi kvalitně napsaný". ;) P.S. Víc hlav -- víc zelí.___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] OT: překlad pojmů "first-class o bject" a "stream object"
Tovim >> "first-class object" > >je spíš "objekt první třídy" než "prvotřídní objekt", >protože snad existují v programování objekty první třídy? No, v tom spočívá ten dotaz ;) Ono se dá najít i spojení "first-class objekt" -- část z toho na českých webových stránkách, ale většinou na německých. V němčině se to dá pochopit. Angličtina je přece jen germánský jazyk. Ale v češtině to nevypadá dobře. Ten pojem jako abstrakce se používá (v programování). Ale jde o to, jaké se mu dá jméno. Význam možná vystihuje "objekt se vším všudy", ale to je spíš do textu "za sedmi horami a sedmi řekami...". >> "runtime context" > >problém nespočívá v uvedeném sousloví ale v termínu >"runtime"; překládá se jako "běh"? li ano, pak >nezbývá než "běhová souvislost" Problém je v tom, že pojem runtime context je použit ve standardní dokumentaci. A mluví se tam i o správci kontextu (context manager) a o context management protokolu a je tam knihovna contextlib... Takže problém je s tím "runtime". >> také se zeptám: jak se překládá slovo "caller" ? "Volající", volající kód, volající funkce... Na druhé straně je "volaný", volaná funkce, volaná metoda. P.___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] OT: překlad pojmů "first-class o bject" a "stream object"
Zdravím všechny po slunečném víkendu, Aniž bych vás chtěl ovlivňovat, hledám překlad pojmů "first-class object" a "stream object" Význam je jasný. Jde o používaný nebo dobře znějící český překlad. Díky za spolupráci, Petr P.S. Funguje http://blog.nic.cz/2010/03/25/pomozte-nam-s-prekladem-knihy-dive-into-python-3/___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] OT: Preklad pojmu "runtime context"?
Visgean Skeloru > Petr Messner > > běhové prostředí? > To se mi zdá jako nejlepší varianta, > ten kontext mi tam nezněl celou dobu. Jenže právě ten kontext je tam celkem bezproblémový. Týká se to funkčnosti "context manager" a i v dokumentaci k příkazu "with" se explicitně mluví o kontextu (bez přívlastků). Zatím nejvíc se mi líbí návrh Michala Vyskočila -- "lokální kontext" Díky a pokračujte ;) Petr P.S. Pro tyto účely funguje i stránka http://blog.nic.cz/2010/03/25/pomozte-nam-s-prekladem-knihy-dive-into-python-3/___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] OT: Preklad pojmu "runtime context"?
Ahoj všichni, Tak jsem tady zase ;) "runtime context" -- tento pojem se používá v souvislosti s pythonovským "with". Kontext -- tady je překlad celkem bezproblémový. Co runtime? "běhový kontext" -- pojem běhový se používá, ale nevím, jak moc. Jak se na to díváte? Nemám na mysli pohled zarytých technických puristů, pro které je jakákoliv odchylka od originálních anglických textů nepřijatelná. Díky za názory, Petr (alias pepr) ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Zkrácená forma přiřazení sel že
No jo. Je to zjednodušení. Petr Messner > Přikryl Petr >> def __iter__(self): >> '''Vraci iterator -- sam sobe iteratorem.''' >> self.idx = 0 >> return self > >prosim takto ne, kdyz udelam >it = iter(slova) >it2 = iter(slova) >tak ty iteratory se navzajem ovlivnuji. Záleží na tom, k čemu to má sloužit. Dá se to napsat s odděleným objektem iterátoru: class Seznam: def __init__(self,sez): self.data=sez def __getitem__(self,idx): return idx < len(self.data) and self.data[idx] or None def __iter__(self): return SeznamIterator(self) class SeznamIterator: def __init__(self, obj): self.idx = 0 self.obj = obj def next(self): '''Standardni podpora iterace.''' if self.idx >= len(self.obj.data): StopIteration hodnota = Seznam.__getitem__(self.obj, self.idx) self.idx += 1 return hodnota ### VSTUP: ### slova = Seznam(["ITEM-1","ITEM-2","ITEM-3", 4]) prvni = slova[0] druhy = slova[1] treti = slova[2] ctrty = slova[3] # Rucne provadena iterace. it1 = iter(slova) it2 = iter(slova) print id(it1) print id(it2) print next(it1) print next(it2) print next(it1) print next(it2) print next(it1) print next(it2) print next(it1) print next(it2) print '-' * 50 >Problem ale stejne bude v tom, ze kdyz chci >prvy, druhy, treti, ctrty = slova > >tak ten iterator musi vratit presne 4 hodnoty a pak vyvolat >StopIteration. A jak tomu reknes, ze z toho tahas ty 4 hodnoty? Leda >tak tim, ze tam fakt budou presne 4. To ale neni chovani, ktere >ocekava tazatel. Tady je otázka, jestli je očekávání podporováno realitou. Nevím, jestli to vůbec nějak jde. Nedivil bych se, kdyby to nešlo. Takhle se bude chovat i standardní seznam. Pokud to má podporovat iteraci, pak nemá smysl ani to None v __getitem__() ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Zkrácená forma přiřazení sel že
Jirka Vejrazka > nemam ted momentalne cas to zkouset, ale troufnul bych si odhadnout, >ze pro funkcnost ve stylu (b) budes muset nadefinovat jak se ma chovat >iterator, tj. napsat si vlastni metodu __iter__(self, ...) Je to tak. Jirka to trefil přesně. To násobné přiřazení vyžaduje, aby objekt podporoval průchod svými prvky. (Takový objekt se pak dá použít například i v cyklu for.) Zkus tohle: class Seznam(): def __init__(self,sez): self.data=sez def __getitem__(self,idx): return idx < len(self.data) and self.data[idx] or None def __iter__(self): '''Vraci iterator -- sam sobe iteratorem.''' self.idx = 0 return self def next(self): '''Standardni podpora iterace.''' if self.idx >= len(self.data): raise StopIteration hodnota = Seznam.__getitem__(self, self.idx) self.idx += 1 return hodnota ### VSTUP: ### slova = Seznam(["ITEM-1","ITEM-2","ITEM-3","ITEM-4"]) prvni = slova[0] druhy = slova[1] treti = slova[2] ctrty = slova[3] # Rucne provadena iterace. it = iter(slova) print it print next(it) print next(it) print next(it) print '-' * 50 # Automaticky aktivovana iterace. prvy, druhy, treti, ctvrty = slova print prvy print druhy print treti print ctvrty___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Preklad "list comprehension"?
Ahoj Jarku, >Od: Jarek Krcmar >Mohlo by se to přeložit jako Srozumitelnost seznamu? To není ono. Slovo comprehension sice má i význam pochopení nebo porozumění, ale taky má význam něco obsáhnout ve smyslu poskládat do sebe. Možná to volně souvisí ve smyslu pochopit = naskládat si něco do hlavy ;) Petr ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] "list comprehension" -- prozatimni zaver
Když mi bylo asi 9 let, bruslil jsem po škole na čerstvě zamrzlém rybníku. V jednom místě byly nahromaděné řasy, takže tam led nebyl nejkvalitnější. Na kamarády jsem ještě stihnul vykřiknout "Ku*va, tady to rupe!". A už to bylo. Tou dobou se totiž tata vracel z práce a zkracoval si to přes rybník. A jak mě slyšel, tak mi jednu majznul, že jsem sebou rupnul já. Od té doby jsem o tom začal víc přemýšlet. A děkuju tatovi, že jsem díky tomu na to přišel tak brzo ;) Petr Od: Petr Mach Přijato: 15.4.2010 19:51:51 Předmět: Re: [python] "list comprehension" -- prozatimni zaver Odvazat se clovek muze prece i bez vulgarity, ne? 2010/4/14 MICHÁLEK Jan Mgr. Když se odvázat, tak pořádně, co takhle seznamrdka From: python-boun...@py.cz [mailto:python-boun...@py.cz] On Behalf Of Petr Mach Sent: Sunday, April 11, 2010 9:26 AM To: Konference PyCZ Subject: Re: [python] "list comprehension" -- prozatimni zaver Přesně tak, teď to zní nezvykle a legračně, ale tak tomu bylo u řady slov, na které jsme si už zvykli a už nám nám to ani nepříjde. 2010/4/1 Přikryl Petr Petr Mach > > Trochu se odvažte, nazvěte to seznamátor a je to :-). No, dobrý nápad. A ty ostatní se budou jmenovat slovníkátor a množinátor. A nadpis bude "-átory". Nebo zobecníme na "dělátory"? :))) ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] OT: preklad "sanity check" -- rozhodnuti
Zdravím všechny, Díky za tipy na překlad "sanity check". Ono to má trochu kultovní nádech a ti, co ten anglický pojem vymysleli možná měli na mysli "příčetnost" -- svoji. Ale faktem je, že tady se to vztahuje na testování správné funkčnosti programu. Mohli bychom uvažovat i o "korektním" chování programu. Ale v konkrétním případě se jedná skutečně o to, že předkládáme nepochybně korektní vstupy (bezesporné, jednoduché) a testujeme nejzákladnější funkčnost programu, funkčnost jádra řešení (bez specialit a hraničních případů). V tomto smyslu jsem zvažoval Davidovu "kontrolu korektnosti" a Petrův "test správnosti". Přece jen je tam slovo "check", které navádí spíš k překladu "kontrola". "Správností" se zde myslí "správnost chování". Takže jsem to ještě chvíli přemílal v hlavě a dospěl jsem k prozatímnímu závěru: kontrola funkčnosti Není to sice tak omračující jako "sanity check", ale doufám, že to bez magie bude srozumitelnější. Pojem sanity check uvedu na příslušných místech v závorce (pokud to budu pokládat za vhodné). Ještě jednou díky (i těm co si z toho dělají prdel, protože ti, co už překládali, ví...). S pozdravem, pepr P.S. Víc hlav, ... víc zelí. Hynek Fabian >http://www.merriam-webster.com/dictionary/sanity >the quality or state of being sane; >especially : soundness or health of mind > >No a ti co píšou o korektnosti by se měli mrknout do slovníku :-P >Ne že by se dalo vždy všechno překládat doslova, >ale tento případ se mi zdá přesný a výstižný. >David Rohleder >> spíš kontrola korektnosti. Správný vstup je pak >> podmnožinou korektního vstupu. >> >> No a ti co píšou o příčetnosti by se měli mrknout do zrcadla :-) >> Petr Messner píše v Čt 08. 04. 2010 v 12:31 +0200: >> > test správnosti ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] OT: preklad "sanity check"
(Off topic) Zdravím všechny pojídače velikonočních vajec ;) Má tady další "Kolik třešní, tolik višní..." Překládal jste někdo pojem "sanity check"? Nebo jste to někdy někde viděli přeložené? Mám nějaké nápady, ale nic moc (a nechci ovlivňovat). Jaké nápady máte vy? Předem upozorňuji, že to rozhodně nechci ponechat v anglickém tvaru, takže pokud navrhujete "nepřekládat", chci vám tímto ušetřit práci a čas na reakci ;) Díky za nápady. Přeju hodně slunečního svitu, málo práce a dobrou náladu. pepr P.S. Pokud to nechcete zahnojovat příspěvky v tomto vzácném fóru, doporučuji konec stránky http://blog.nic.cz/2010/03/25/pomozte-nam-s-prekladem-knihy-dive-into-python-3/___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] "list comprehension" -- prozatimni zaver
Petr Mach > > Trochu se odvažte, nazvěte to seznamátor a je to :-). No, dobrý nápad. A ty ostatní se budou jmenovat slovníkátor a množinátor. A nadpis bude "-átory". Nebo zobecníme na "dělátory"? :))) ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] "list comprehension" -- prozatimni zaver
>- >Od: >Přijato: 29.3.2010 14:06:30 >Předmět: Re: [python] "list comprehension" -- prozatimni zaver > >rmik...@pss.sk napsal(a), dne 29.3.2010 13:50: > >> Slovo "comprehension" ma vseobecne asi viac vyznamov. >> Ja by som preto "list comprehension" neprekladal, ale >> by som to radsej popisal (napriklad ako poznamku >> prekladatela) asi takto [...] Ono to ale vždycky opisem nejde. Potřebujeme rozumný pojem. Dám konkrétní příklad. Název jedné kapitoly té knihy zní... Comprehensions A teď babo raď. Navíc, slovo comprehension má ve spojení list comprehension zcela jasný význam. >> Ja som kedysi tomu co je "list comprehension" tiez nerozumel a pamatam >> si, ze prave Vy ste mi to pred par rokmi vysvetlil v tejto konferencii >> nejakym podobnym sposobom :-) ;) No, ale tenkrát ten rozbor končil pojmem "generátor seznamu", který je pro českého/slovenského čtenáře určitě pochopitelnější, než původní list comprehension. Pavel Kosina reagoval > > Právě že toto je nevýhoda [nechat list comprehension]. Je lepší, > když slovo nebo slovní spojení dávají alespon nějaký nástin > samostatného pochopení v daném jazyce. Nebo se vám pak taky > může stát, že se oborový jazyk stane snůškou cizojazyčných názvů. > Bude to pak vypadat děsně složitě, lidé budou vnímat obor > jako něco velmi nepřístupného. A to je přesný opak toho, o > co jde, že? Tak, tak. To je to, o co tady jde. ;) Díky za podporu. A díky taky Davidovi Rohlederovi za pochopení a protipříklady do diskuse. Mějte se fajn, pepr ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] "list comprehension" -- prozatimni zaver
RMiklos napsal > list comprehension = notace na vytváření seznamu Jo. Jenže [1, 2, 3, 4] je taky notace na vytváření seznamu. A potřebuju dospět k samostatnému ekvivalentu pojmu "comprehension". Hynek Fabian > Přikryl Petr: > > list comprehension = generátorová notace seznamu > > set comprehension = generátorová notace množiny > > dictionary comprehension = generátorová notace slovníku > > Po technické stránce je to perfektní. Ale [...] vítězí krátké > a stručné termíny nad popisnými, a dvanáct slabik je moc. Ano. Zatím jsem na nic stručnějšího při chtěné přesnosti vyjádření nepřišel. > Vsadím jablečný koláč proti psímu sucharu, že „notace“ > bude z praktického užití okamžitě vypuštěna. Je to slovo > přesné a výstižné, ale nadbytečné. To mi nevadí. To je život. Já to tam potřebuju, tak to použiju a nechám na každém, jak moc se toho chce držet při rychlé osobní komunikaci, kdy se věci mohou vyjasňovat doplňujícími dotazy a poznámkami. Generátor seznamu je fajn. Ale bez kontextu to může být víc věcí. P.___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] OT: Hleda se slovensky spravce nastroje Doxygen
Zdravím všechny pythonisty, Už delší dobu se hledá správce pro podporu slovenského jazyka v nástroji Doxygen http://www.doxygen.org/ Měl by to být člověk, který aspoň trošku tuší, co je to C++, ale stačí trošku. Pomocná ruka se najde. Doxygen se používá pro generování dokumentace ze zdrojového textu v komentářích. Výhodný je zejména pro vytváření programátorské dokumentace, pro vyjádření vazeb (jaká funkce volá jakou...). Mimo jiné se dá použít i pro Python. Dřívější správce (Stanislav Kudláč) už má moc jiné práce (ale díky za to, co už udělal). Díky za nabídky, pepr___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] "list comprehension" -- prozatimni zaver
Toto je velmi zajímavý příspěvek a na jeho základě jsem dospěl k závěru, který uvádím... no na závěr. Díky Jan Bednařík napsal (rozlámal jsem a doplnil číslování kvůli odkazům) > > 1) Rozhodně nepřekládat. Překlad nic neřekne začátečníkovi, > ale ani nikomu, kdo má s programováním zkušenosti. > > "list comprehension" je obecný pojem používaný > v mnoha programovacích jazycích. > Pokud vím, tak neexistuje žádný všeobecně rozšířený překlad > do češtiny. A osobně se nepamatuji, že bych se setkal > s knihou/učebnicí/skripty, kde by to někdo překládal. > > 2) Význam pojmu "list comprehension" je natolik specifický, > že při snaze ho přeložit se vždy dostaneme na velmi > tenký led. > > 3) Použití všeobecně známých pojmů z programovacích > jazyků jako "generátor", "konstruktor", atp. s sebou > ponese matoucí asociace. > > 4) Například pod pojmem "generátorový zápis" si spousta > lidí představí "generator expression" a těžko pochopí, > že to má mít úplně jiný význam. > > 5) "list comprehension" je pojem používaný > v informatice desítky let. To že ho ještě nikdo > nějak rozumně nepřeložil do češtiny (tím myslím překlad > který by se uchytil) asi o něčem vypovídá. Myslím si, > že jakákoliv snaha tento pojem přeložit si vyžádá širší > akademickou diskusi přesahující komunitu okolo jazyka > Python. Zkusil bych se poptat odborníků na fakultách > informatiky zdejších vysokých škol. Třeba někde > vymysleli a používají nějaký rozumný překlad. = ad 1) Cílem té knihy mimo jiné je, aby to někomu něco řeklo. A ten překlad se dělá proto, aby to bylo k dispozici pro české čtenáře. Chápu, je to trochu paradox ;) Takže první závěr zní, rozhodně to nějak přeložím. Originální pojem samozřejmě ponechám v závorce a přidám asi odkaz na http://en.wikipedia.org/wiki/List_comprehension ad 2) Není to zase tak tenký led. Jedna věc je snažit se přeložit "anglické slovo comprehension" a druhá věc je snažit se najít odpovídající pojem, který vychází z významu toho anglického pojmu. Na výše uvedeném odkazu na wikipedii se dají najít tyto jasné stopy (list comprehension): - Je to SYNTAKTICKÁ KONSTRUKCE. Tím odpadají kandidáti typu "generovaný seznam" (protože to vyjadřuje spíš dynamický výsledek, než statický zápis v programu, tj. syntaktickou konstrukci. - Existuje i matematický pojem "set comprehension", pro který existuje ekvivalent "set-builder notation" -- doslova notace (zápis) vytvářeče množin. Je to ono známé (příklad) { x elem N: x > 0 } - Ty zmíněné jazyky jsou většinou deklarativní jazyky. Mají svým způsobem blíž ke klasické matematice, kde "množina vznikne, obsah splňuje vlastnosti, je". Ale už ono "set-builder" napovídá tomu, že v praktickém případě se musí nějak vybudovat... ad 3) S tím částečně souhlasím. Proto se snažím o diskusi. Protože definice pojmů jsou vždy věcí dohody. Není v tom nic mechanického. Vstupuje do toho lidský faktor, protože je to nástroj pro lidi. ad 4) Tady si dovolím oponovat. Jestli jste to pochopil takto, tak mám radost, protože právě takhle to bylo myšleno. Ono to totiž nemá jiný význam. Na http://en.wikipedia.org/wiki/List_comprehension se říká, že jde o "syntaktickou konstrukci pro vytvoření seznamu z jiného seznamu". V deklarativních jazycích je to OK. Ale Python je imperativní jazyk a tahle přejatá konstrukce je elegantně použita s širší platností. List comprehension totiž umožňuje vytvořit seznam z čehokoliv, přes co se dá iterovat (nejen ze seznamu). A ta iterace se dá popsat výrazem (tedy nejen příkazy) a tomu výrazu se říká generátorový výraz. Generátorový výraz je zvláštní v tom, že šikovně kombinuje deklarativní přístup s imperativním. Deklarativně se zapisuje a jeho možnosti se podobají generátorové funkci (která má uvnitř yield). Vyhodnocením generátorového výrazu nebo zavoláním generátorové funkce vznikne generátor (generátorový objekt). Postupným voláním .next() můžeme získat generované hodnoty. ad 5) [... akademickou diskusi.] Což tímto samozřejmě činíme. Čtou to i lidé, kteří se věnují výuce. Postupně přejdu k závěru... List comprehension je syntaktická konstrukce. Jejím účelem je popsat vytvoření seznamu jaksi víc deklarativně. Protože jde o syntaktickou konstrukci se specifickým významem, není pravděpodobně implementována překladem na obecný generátor, ale je to uděláno efektivněji. Přesto ale věcně můžeme List comprehension čistě nahradit použitím konstruktoru seznamu a do něj vloženého generátoru, který může být definován i generátorovým výrazem. Srovnejte: >>> lst = [ i*2 for i in range(10) ] >>> lst [0, 2, 4, 6, 8, 10, 12, 14, 16, 18] a generátorovým výrazem >>> lst = list(i*2 for i in range(10)) >>> lst [0, 2, 4, 6, 8, 10, 12, 14, 16, 18] Takže list comprehension je typický "syntactic sugar", který může být díky tomu, že jde o speciální případ generátoru poněkud efektivněji implementován. A teď "set comprehension" neboli "set
[python] Dive Into Python 3 - diskuse k pojmum na nic.cz (bylo Re: Preklad "list comprehension"?)
Vypadá to, že diskuse se přesune na http://blog.nic.cz/2010/03/25/pomozte-nam-s-prekladem-knihy-dive-into-python-3/ Mám pocit, že by to ale chtělo nějaké lepší komunikační médium -- něco ve stylu wiki... Nebo něco jiného. Nemáte zkušenosti? Taky by se tam asi hodilo zařadit seznam pojmů a slovních spojení, o kterých si myslíte, že jsou z hlediska překladu problematické. A postupně bychom to vyjasňovali. Hynek Fabian napsal >Co máte všichni s těmi generátory? >Je to „výčet seznamu“ >(není to z mojí hlavy, ale už nevím kde jsem to poprvé zaslechl) >Trochu hezčejší by byl „vypočítávaný seznam“, ale to už mi přijde dlouhé. S tím nemůžu souhlasit. Pojem výčet se používá celkem jednoznačně pro konkrétně vyjmenovanou sadu hodnot. Tady se ty hodnoty vytvářejí transformací z jiných hodnot něčím, co už má pojem přidělen, a to "generátorovým výrazem". Výsledkem generátorového výrazu je generátor. Ten produkuje počáteční hodnoty výsledného seznamu. >BTW tenhle job ti Petře nezávidím - buď tě jedna polovina lidí prokleje že >zatahuješ do českého textu cizojazyčné termíny, nebo druhá půlka že vymýšlíš >čechismy o které nikdo nestojí :-) Z toho strach nemám. Kdo velmi trvá na cizojazyčných termínech, přečte si to v originále (budu je taky na vhodných místech uvádět v závorce). Chci dosáhnout toho, aby se to dalo dobře číst a aby člověk-začátečník, případně i neprogramátor nenacházel v textu pro něj naprosto nesrozumitelné věci (v rozumné míře). >Petr Majtan (čtvrtek 25 Březen 2010 10:36:14): >> napada mne toto: >> seznam vytvaren generatorem >> seznam s pomoci generatoru >> seznam inicializovany generatorem >> nebo jen >> seznam z generatoru >> >> ale je to fakt orisek... Kolik třešní, tolik višní ;)___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Preklad "list comprehension"?
tommz napsal > pepr napsal >> Jak přeložit (krátce) pojem list comprehension. >> Kdysi dávno se to tady už řešilo a došli jsme společně >> k názoru "generátor seznamu". >> ... až na to, že to není přesné. > A co intezionální zápis seznamu, množiny, ... ? > Jestli jsem tu konstrukci teda správně pochopil :) Jak by řekl klasik "Neříkej mi tajtrlik. Za prvé nevím, co to je, a za druhé mě to uráží" ;) Intenzionální logiku neznám a mám obavy jen tak plácnout. A taky předpokládám, že ji nezná drtivá většina uživatelů jazyka Python. Možná to vzbuzuje jasnou představu o účelu takového zápisu pro někoho, kdo se intenzionální logikou zabývá. Ale obávám se, že možná ani to ne. David navrhl : generovaný seznam : generovaný slovník : generovaná množina Tohle je srozumitelné, ale není to ono. Omlouvám se, ale potřebuju teď být detailista, protože na tom pojmu budu stavět víc věcí okolo. Jde o to, že ten pojem comprehension vyjadřuje použití určitého způsobu zápisu našeho záměru, který je zachycen ve zdrojovém textu. Má tedy statický charakter. Pojem "generovaný seznam" navozuje představu hotového objektu, který byl nějak vygenerován, ale jakoby se neříká jakým způsobem. Když dám dohromady ty dva návrhy, pak mi vychází zápis generovaného seznamu zápis generovaného slovníku zápis generované množiny ale to se pojmu moc nepodobá. Je to málo specifické generátorový zápis seznamu generátorový zápis slovníku generátorový zápis množiny Společný pojem by mohl být "generátorový zápis" (= comprehension). Hmmm. Nevím. Nebo jo? Funkční princip list comprehension je v tom, že generátorovým výrazem popíšeme vznik generátoru, který po dobu inicializace objektu generuje počáteční hodnoty. Tak trochu problém je už originální pojem comprehension má v Češtině tak jakoby nádech podstatného jména slovesného nebo nějak v sobě zachycuje činnost. To je u pojmů, které mají vyjadřovat něco statického, trochu nepraktické. Jak se díváte na to ... ? xyz comprehension = generátorový zápis XYZ Díky za názory, pepr___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] Funkce vs. metody třídy (bylo RE : nevznik objektu)
Michal Vyskocil píše >David Rohleder píše >> Petr Messner píše >> >> Možná jsem prostě jenom příliš staromódní [...] ... >> > - nevolat konstruktor (tedy nevytvářet objekt), ale volat funkci, >> > která sama vytvoří objekt, nebo vrátí None - podle mě nejlepší řešení ... >> To zní zajímavě, ale moc mně to nezapadá do takového toho "objektového" >> pohledu na svět. Nutno přiznat, že je to asi celkem jedno, z venku >> modulu to vypadá stejně jako přímo ten konstruktor objektu. ... >No tak to nemusí být funkce, ale metoda třídy >Je to sice trošku Javovský přístup, ale aspoň >to nezačíná na class IPFactory :-) Já bych se přimlouval za to být trochu staromódní a nesnažit se všechno převrátit na objekt. Staré dobré funkce jsou zde tím nejjednodušším vyjádřením uvedeného záměru. Snažit se zabalit funkci do podoby něčeho "vznešenějšího" mi připadá zbytečné. Pokud třída neobsahuje žádnou členskou proměnnou a není určena k dědění, pak psát kód do podoby její metody třídy mi připadá ve srovnání s prostou funkcí obtížně zdůvodnitelné. KISS -- Keep It Small and Stupid Taková třída by mohla přinést navíc pouze svázání více souvisejících metod dohromady. Třída, ze které se nevytvářejí instance (protože není nutné zachycovat vnitřní stav) je degradací na pouhý prostor jmen, do kterého jsou umístěny prosté funkce. V Pythonu vyjádříme prostor jmen formou odděleného modulu -- když už to musí být. Podle mého názoru funkce a objektový pohled na věc spolu nijak nebojují. pepr ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] Preklad "list comprehension"?
Zdravím všechny pythonisty, Mám tu další námět... Jak přeložit (krátce) pojem list comprehension. Kdysi dávno se to tady už řešilo a došli jsme společně k názoru "generátor seznamu". Ono to není tak úplně špatné, až na to, že to není přesné. Je to vlastně generátorový výraz uzavřený do hranatých závorek. Funkčním ekvivalentem je: list(generátorový_výraz) Tomuhle se ale generátor seznamu asi moc říkat nedá. Opisem by se to dalo nazvat "vytváření objektu typu seznam, který je inicializován hodnotami generátoru". Problém je v tom, že v Pythonu je pojem generátor velmi konkrétní a specifický. Jak z toho ven? A máme tu ještě dictionary comprehension a set comprehension. Chtělo by to zobecněný český pojem pro slovo comprehension. Ale něco rozumného. Já vím, ono je těžké najít něco rozumného pro takovou zpatlaninu -- o technickém pojmu pickle ani nemluvím ;) Dík, pepr___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] "Dive
Chtěk jsem jen zachovat tu stylovou hříčku se začátkem názvu knihy. Mohlo by tam být v podstatě cokoliv. Ono se to ještě utřepe a třeba i změní. Každopádně díky za další postřeh. pepr >- >Od: Tovim >Přijato: 24.3.2010 15:50:16 >Předmět: Re: [python] "Dive > >Nedávno jsem se v anglickém textu setkal s větou "..., before I dive in" z >čehož mi vysvítalo, že bylo míněno naše prosté "... než se do toho pustím". > > > >Zdravím, Tovim > > > >-Original Message- > > > > > >Na začátcích kapitol jsem "Diving in" přeložil jako "Ponořme se". > > > > > >___ > >Python mailing list > >Python@py.cz > >http://www.py.cz/mailman/listinfo/python > > > > ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] generatorovy vyraz
>- >Od: David Rohleder >> g = (i*i for i in range(4)) >> >> Jde jen o specialitu, aby překladač poznal, >> že to je generátorový výraz. Je to jako numerický >> výraz -- taky se může zapsat do závorek. > >Mně vadí nekonzistence: > >jde napsat > >a = fce(generátor) > >nebo > >a = fce((generátor)) To i*i for i in range(4) není generátor, ale generátorový výraz. Generátor se z toho stane až po tom přiřazení. >je možné napsat > >a = (generátor) > >ale ne > >a = generátor Tedy přesněji, nelze napsat: a = generátorový výraz ... jde o to, že se bez těch závorek jednoznačně nepozná, že jde o generátorový výraz -- podobně jako když se u složitějších aritmetických výrazů musí uzávorkovat podvýrazy, protože ty podvýrazy se nepoznají samy od sebe. >výmluvy na to, že by překladač nepoznal, že se jedná o generátor a ne o >přiřazení i*i jsou liché, protože on to musí poznat např. u té funkce. >pokud by byl tak hloupý, jak říkáš, tak by > >a = fce(i*i for i in range(4)) > >nahlásila taky syntax error jako v příkladu níže. Jde o to, že při volání funkce překladač očekává výraz(y). Tam není jiná možnost, že by se to dalo chápat jako příkazy. Překladač tu situaci bez závorek samozřejmě pozná, ale bez těch závorek se nedá jednoznačně rozhodnout, jestli je to generátorový výraz nebo chybně zapsaný příkaz. >podle mne tady tyto problémy způsobuje třeba i použití kulatých závorek, >protože se pak jednoduše splete s nějakým tuple, případně dalšími >operátory. Překladač musí zjišťovat jestli se ve výrazu někde vepředu >nevyskytuje for, aby celý výraz mohl prohlásit za generátor. Překladač se neplete. Tuple takto definovat nelze. A asi právě proto neexistuje něco, čemu by se říkalo "tuple comprehension". Proč by taky mělo, když to nepotřebuji a jednoduše dosadím generátorový výraz do tuple() -- je tam o "tuple" víc a mám totéž. >Kdybych chtěl nějakou jednoznačnou syntaxi, tak bych mnohem radši použil >složené závorky: > >a = { i*i | for i in range(4)} Jenže tohle je v Pythonu už použito (až na tu sviskou čáru, která je tam jaksi nepythonovsky navíc). Následující příklad ukazuje generátor množiny (ve smyslu vytvoření vygenerované množiny; něco jako konstruktor množiny definované generátorovým výrazem -- anglicky set comprehension): >>> a = { i*i for i in range(4) } >>> a {0, 1, 4, 9} >>> type(a) A další příklad je něco podobného -- dictionary comprehension aneb konstruktor generovaného slovníku: >>> a = { i:i*i for i in range(4) } >>> a {0: 0, 1: 1, 2: 4, 3: 9} >>> type(a) >> Jde taky o to, že generátorový výraz lze napsat >> na víc řádků. Tady je jiný výraz a je to pitomost, >> ale pro ilustraci: >> >> >>> g = (i*i >> ...for i in range(4) >> ...if i > 2) > >to už je hodně přitažené za vlasy, normálně se jeden příkaz píše na >jeden řádek, lambda funkci taky nemůžeš napsat takovým způsobem na dva >řádky. Tady prostě normálně funguje \ a dostaneš stejnou věc. Jako přitažené za vlasy se to může zdát do doby, než zjistíš, že generátorové výrazy lze do sebe zanořovat. A taky je lepší nevydávat vlastní přání za skutečnost. Python je rozumnější jazyk, než například makrojazyk v C. Zpětné lomítko pro indikaci pokračovacího řádku není nutné psát. Jinými slovy, jeden příkaz nemusí být zapsaný na jednom řádku -- i když se nepoužije zpětné lomítko. Například volání funkce: >>> def f(a, b, c, d): ... print(a, b, c, d) ... >>> >>> f('první', ... 'druhý', ... 3, ... 4) první druhý 3 4 >>> Lambda funkce v Pythonu přestává být přirozeným prvkem. Ve specializovaných jazycích by to bylo taky na mašlu, kdyby se lambda výraz nemohl zalomit na víc řádků. Když to shrnu, tak všechny ty komplikace, které by vznikly při jiném přístupu ke generátorovému výrazu, nestojí za to. Navíc v situaci, která se prakticky vůbec nevyskytuje a ve které navíc stačí prostě uzavřít generátorový výraz do kulatých závorek. pepr___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] generatorovy vyraz (bylo Re: nevznik objektu)
>Od: David Rohleder >[...] si snažím o >objasnit některé věci. Imho jsou >napřiklad některé z těch syntaktických >cukrů špatně - např. odstranění >závorek z generátorů (i*i for i in range(4)). >Ne, že by se na to nedalo >zvyknout, akorát to tady trochu přehnali. Ty závorky nejsou odstraněné. Ty závorky nebyly nikdy potřeba... až na některé výjimky, jako g = (i*i for i in range(4)) Jde jen o specialitu, aby překladač poznal, že to je generátorový výraz. Je to jako numerický výraz -- taky se může zapsat do závorek. >>> g = i*i for i in range(4) File "", line 1 g = i*i for i in range(4) ^ SyntaxError: invalid syntax >>> g = (i*i for i in range(4)) >>> g at 0x0282A580> A určitě to není generátor n-tice. Tu si ale můžu jednoduše z generátorového výrazu vytvořit. V níže uvedeném příkladu už ta syntaktická specialita není nutná, takže je to tuple() s holým generátorovým výrazem uvnitř: >>> t = tuple(i*i for i in range(4)) >>> t (0, 1, 4, 9) Jde taky o to, že generátorový výraz lze napsat na víc řádků. Tady je jiný výraz a je to pitomost, ale pro ilustraci: >>> g = (i*i ...for i in range(4) ...if i > 2) >>> g at 0x0282A648> >>> tuple(g) (9,) Kdyby tam nebyly (u toho výrazu) ty závorky, vypadal by for jako špatně odsazený... a vůbec by to překladači mohlo hodně zamotat hlavu. Nehledě na to, že by se to for mohlo odsadit stejně jako g a pak už by to bylo úplně divné. pepr ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] Trida pro IP adresu, vyjimky (bylo RE: Re: nevznik objektu)
Zdravím, Přidám svůj pohled na řešení problému s IP objektem a na pohled na výjimky (s ohledem na vaše vzdělání a působení). S tím návrhem třídy IP bych se přimlouval k promyšlení pohledu na to, co objekt třídy IP reprezentuje. Zohlednil bych taky to, jak by to vypadalo v jiných jazycích, třeba v C++. Prakticky žádný jazyk neumožní korektní "nevznik" objektu -- pokud nedojde k nějaké nízkoúrovňové havárii. Objekt v kompilovaných jazycích buď vytvořím staticky, na zásobníku (jakoby staticky, ale v prostoru zásobníku) nebo dynamicky (new nebo něco takového). Jakmile vznikne, zpřístupňuji jej přímo přes jméno proměnné (statický objekt nebo na zásobníku -- tohle v Pythonu není), přes referenci (to je případ Pythonu) nebo přes ukazatel. Pouze v případě použití ukazatele mám možnost vrátit alternativně hodnotu NULL. Pak to musí být případ, který popisoval Petr Messner -- zavolat funkci a ta vrátí buď NULL nebo hodnotu ukazatele na vytvořený objekt. Tohle by v Pythonu bylo stejné. Při návrhu se musí rozhodnout, co vlastně objekt třídy IP má vyjadřovat. Má vyjadřovat zachycení přání vnějšího prostředí (uživatele, volajícího kódu) získat objekt s právě takovou IP adresou? Má existence objektu vyjadřovat platnost IP adresy? Co to vůbec je "platná IP adresa"? Je to syntakticky správně napsaná adresa, nebo je to adresa, která se dá skutečně použít? Nebo dokonce adresa, která mi umožní udělat operaci, kterou bych chtěl provést (tj. s ověřením, že se přes ni někam dostanu)? A co když se syntaxe IP adres v budoucnu změní? Jak to udělat, abych toho musel předělávat co nejméně? V tomto smyslu se přimlouvám za to, aby objetk třídy IP vznikl vždy, ale aby se bránil použití v případě, kdy má nepoužitelný obsah -- v okamžiku použití, nikoliv v okamžiku vzniku (viz například momentální nedostupnost přes IP). Na vyšší úrovni si pak můžu rozhodnout, zda objekt s nepoužitelnou IP adresou (po otestovnání jeho vlastností) ponechám nebo zruším. V tomto smyslu se přimlouvám znovu za návrh Petra Messnera -- využít __nozero__. Protože přesně pro tento účel byla metoda navržena. Ona se vlastně jmenuje blbě. Její jméno by mělo být odvozeno spíš z myšlenky "hodnota v boolovském kontextu". Ale vznikla v době, kdy Python místo True a False používal ještě 0 a != 0 (jako C). Pak nepotřebuji pomocnou funkci, ale objekt můžu použít k testování přesně stejným způsobem, jako bylo původně zamýšleno: ipaddr = IP("192.168.34536.45") if not ipaddr: print "zadavas blby vstup" Chování v boolovském kontextu implementované metodou __nozero__ navíc umožňuje dynamicky měnit "platnost" objektu podle potřeby. Teď k výjimkám. Souhlasím s názorem, že výjimky by se měly vyskytovat výjimečně. Ale spíše jde o to, že se výjimečným způsobem ošetřují. Co se týká výjimky StopIteration, tu považuji spíš za výjimečnou ;) Jde o to, že samotný cyklus for je v Pythonu proti "klasickým kompilovaným" jazykům trochu výjimečný. Není to počítaný cyklus. Je to zobecněný cyklus přes sekvenci. Existence StopIteration přestavuje jednu z mála možností, ja mohou všechny možné iterace dát najevo svůj konec (různé kontejnery, generátory...) A co se týká programování s výjimkami a bez výjimek, je to otázka změněného přístupu k tvorbě programu (podle mého k lepšímu). Když to srovnáváte s goto... Dříve "neřízené" používání goto způsobovalo těžko řešitelné problémy. Postupně to vedlo k "objevu" strukturovaného programování (Wirth jako představitel). Pořád ale bylo založeno na jednoduchém toku řízení. Proto bylo možné "následně" testovat, jak to dopadlo před chvílí. Ve školních příkladech se často "testování jak to dopadlo" pro jednoduchost vynechávalo... protože to zkrátka vede k zaplevelení kódu smetím, které není užitečné z hlediska abstraktního uvažování o problému. Jenže v praxi právě k tomuto jevu dochází a programy se stávají hůře čitelné (se všemi důsledky, jako třeba vznik dalších chyb díky bobtnání kódu). To testování se taky muselo dělat otrocky. Muselo se myslet na všechny možné situace, které mohly selhat. Při rozsáhlejším programu je to na mašlu. Objektové programování představuje další změnu pohledu ve smyslu "spolupráce kooperujících objektů". A i když se o tom programátoři v praxi zatím tak moc neuvažují, znamená to "potenciálně paralelní činnost" těch objektů. Potom už je velmi těžké uvažovat v kategoriích co bylo dříve a co později. Umělá serializace akcí vede k navození situace, kdy by se uplatnil Amdahlův zákon (úzké hrdlo paralelismu). Výjimka je v takovém případě výhodným komunikačním prostředkem, který bude fungovat i v paralelním prostředí. A opět, výjimečný není samotný objekt výjimky, ale způsob, jakým je jeho existence zpracována. V jazycích typu C++ získaly kdysi výjimky přívlastek těžkopádného nástroje. Ale bylo to proto, že existovalo méně zkušeností s tím, jak jsou užitečné a obtížně nahraditelné. A taky to souviselo s vývojem překladačů a s generováním kompilovaného kódu. A taky, v C/C++ se vše měřilo
Re: [python] Jak byste přeložili "Dive Into Pyt hon"?
Díky všem za náměty. Zvláště obálka knihy s tou chobotnicí by se mi líbila... (kdybych byl škodolibý perlovský nebo rubyovský fundamentalista ;) Zvolil jsem kompromisní řešení, ale nebude to záležet jen na mně. Abyste pak na první pohled "věděli", o co jde (a nejen vy), bude se to asi jmenovat česko-anglicky: Dive Into Python 3 aneb Ponořme se do Python 3 Já vím, má to svoje mouchy. Ale na nic kompromisně nekompromisního jsem nepřišel. Na začátcích kapitol jsem "Diving in" přeložil jako "Ponořme se". Ponořme se do hlubin -- to se mi zdá příliš básnické a málo otevřené dvojznačnostem. Ona se tak kniha noří nejen do hlubin. Spíš by to mělo vyznít jako výzva k soustředění, ke snaze pochopit... než směřování k detailům a temným hlubinám. Mějte se krásně, pepr >- >Od: MICHÁLEK Jan Mgr. >Přijato: 17.3.2010 11:18:05 >Předmět: Re: [python]Jak byste přeložili "Dive Into Python"? > >ponořme se do hlubin pythonu > > > >-Original Message- > >From: python-boun...@py.cz [mailto:python-boun...@py.cz] On Behalf Of >Ctibor.Plasek > >Sent: Wednesday, March 17, 2010 11:10 AM > >To: Konference PyCZ > >Subject: Re: [python]Jak byste přeložili "Dive Into Python"? > > > >Divej Python :-) > > > > > >> Původní zpráva > >> Od: Hynek Fabian > >> Předmět: Re: [python] Jak byste přeložili "Dive Into Python"? > >> Datum: 17.3.2010 10:53:24 > >> > >> "Python do hloubky" nebo "Hlubiny Pythonu". > >> Podkapitola by se pak klidne mohla jmenovat "Potápíme se". > >> > >> A na obalku patri tohle :-) > >> http://artfiles.art.com/5/p/LRG/17/1745/JNL3D00Z/huge-octopus-nearly-s > >> ucceeds- > >> in-overcoming-american-diver-martin-lund-but-is-eventually-beaten-off. > >> jpg > >> > >> > >> Přikryl Petr (úterý 16 Březen 2010 23:31:21): > >> > Po delší odmlce všechny zdravím. > >> > > >> > Přemýšlím nad tím, jak by se dal trefně přeložit název známé knihy > >> > "Dive Into Python" a úvodní podkapitola v jednotlivých kapitolách "Diving >> > In". > >> > Má někdo nějaký trefný nápad? > >> ___ > >> Python mailing list > >> Python@py.cz > >> http://www.py.cz/mailman/listinfo/python > >> > >> > >> > >___ > >Python mailing list > >Python@py.cz > >http://www.py.cz/mailman/listinfo/python > > > > > >__ Informace od ESET NOD32 Antivirus, verze databaze 4950 (20100316) >__ > > > >Tuto zpravu proveril ESET NOD32 Antivirus. > > > >http://www.eset.cz > > > > > > > >__ Informace od ESET NOD32 Antivirus, verze databaze 4950 (20100316) >__ > > > >Tuto zpravu proveril ESET NOD32 Antivirus. > > > >http://www.eset.cz > > > >___ > >Python mailing list > >Python@py.cz > >http://www.py.cz/mailman/listinfo/python > > > > ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Jak byste přeložili "Dive Into Pyt hon"?
Jirka Vejrazka napsal > >Ja nevim, uz je sice pozde vecer, ale "Ponorte se do Pythonu" >mi nezni uplne spatne... No úplně špatně to asi není. Jde o to, že to má takový abstraktnější význam... 2. Fig.: To plunge or to go deeply into any subject, question, business, etc.; to penetrate; to explore. --South. [1913 Webster] "Ponořte se" má snad podobný abstraktní význam, ale jde taky o to, jak by takový název čtenáři "seděl". Proto se ptám.___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
[python] Jak byste přeložili "Dive Into Pyt hon"?
Po delší odmlce všechny zdravím. Přemýšlím nad tím, jak by se dal trefně přeložit název známé knihy "Dive Into Python" a úvodní podkapitola v jednotlivých kapitolách "Diving In". Má někdo nějaký trefný nápad? Mějte se fajn, Petr ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python