[python] Seznamy

Jan Bednařík jan.bednarik na gmail.com
Středa Únor 11 10:33:26 CET 2015


Já bych snad jen dodal, že obrovská síla Pythonu je v tom, že je
multiparadigmatický, a umožňuje volit objektový, funkcionánlní, či
procedurální přístup pro řešení konkrétních problémů. A myslím si že
dobrého programátora nedělá to, že dokáže všechno naprogramovat v jednom
oblíbeném paradigmatu, ale že dokáže volit to nejelegantnější řešení pro
daný problém.

Není problém pokud nevím, jak něco vyřešit. Problém je, když znám jen jedno
řešení.

Honza

2015-02-11 10:08 GMT+01:00 Vladimir Macek <macek na sandbox.cz>:

> On 10.2.2015 20:50, Honza Král wrote:
> > 2015-02-10 20:36 GMT+01:00 Radek Holý <radekholypublic na gmail.com>:
> >> V Pythonu dělám skoro 9 let a pořád platí, že kdykoliv někde
> >> narazím na "reduce", "map" apod. tak mě to vždy zdrží a chvíli mi
> >> trvá, než pochopím o co jde. List comprehensions se mi čtou
> >> snadněji - přirozeněji. Nehledě na to, že ty funkcionální
> >> záležitosti jsou skoro vždy spojené s deklarací jinak zbytečných
> >> funkcí se složitým významem, nebo ještě komplikovanějšími lambda
> >> funkcemi. Každopádně je to prostě otázku vkusu/zvyku... Jedním z
> >> problémů může pro mě být ta prefixová notace. Vypadá to jako Lisp
> >> :-)
>
> Doufám, že se shodneme, že to je věc osobních preferencí a nebudeme si to
> navzájem vyčítat. :-) Zajisté můžu považovat za elegantnější vytáhnout
> filtrační nebo transformační logiku do extra funkce s komentáři a pak jí
> předhodit do filter/map než to patlat do třířádkového C-G. Podotýkám pro
> jistotu znovu, že používám jak filter/map + zřídka reduce, tak C-G, vždy
> podle svého citu pro vhodnost. Snažím se dodržovat Zen.
>
> Kdykoli píšu \, trošku uvnitř umřu.
>
>
> > Vidim to uplne stejne, proto jsem byl prekvapen kdyz tady slysim
> > zastance filter/map/... Ja osobne se k nim skutecne uchyluji jen
> > obcas kvuli vykonu a v situaci kdy je naprosto jasne, co to bude
> > delat.
>
> To poslední negrokuju. :-) Jasné je snad v Pythonu vše, proto ho máme rádi,
> ne? :-)
>
>
> >> Ještě mě zarazilo to "stáhneme 10 URL". S tím mám vždy osobní
> >> problém. Jakmile někdo volá "map", aniž by ho zajímala návratová
> >> hodnota volané funkce, považuji to za chybu. Nehledě na to, že v
> >> Pythonu 3 "map" vrací iterátor, takže se kvůli tomu ještě typicky
> >> "map" obaluje do "list"... V těchto případech vždy preferuji
> >> klasický "for" cyklus. Ale opět je to jen můj názor.
>
> Dovoluji si i zde spíše nesouhlasit, zejména se slovem typicky.
> "Přetypování" tohoto typu snad používáme až tehdy, kdy je to nutné, ne?
> Pokud někde dostanu iterátor, je hromada případů, kdy se elegantně a
> efektivně použije přímo.
>
>
> > Naprosty souhlas, parkrat jsem videl volani map ci list
> > comprehension bez zajmu o vysledek a take s tim mam problem - je to
> > plytvani (zbytecne se alokuje list) a je to hure citelne.
>
> Nedochází mi, kde jste vzali, že spojuju příklad se stažením 10 URL s
> map(), psal jsem zrovna, že jsem na tom příkladu ilustroval C-G. Ale i na
> map() se to dá použít
>
> map(urllib.urlopen, ('http://www.seznam.cz', 'http://google.com',
> 'http://ibm.com'))
>
> Též nerozumím tomu, jak jste vyvodili, že se jak v tomto případu, tak v tom
> mnou prve zmíněném s C-G nezajímám o návratovou hodnotu.
>
> Jednak jsem to zmiňoval jako rychlou ukázku C-G jakožto konstruktu pro
> studenty (kde se navc netvoří profesionální kód), za druhé mohu dostat
> všechny potřebné informace vč. stavových a za třetí... kam se vám poděl
> EAFP (https://docs.python.org/2/glossary.html)?
>
>
> > Mimochodem v python3 uz reduce ani neni builtin (byl presunuty do
> > functools) a i Guido to vidi obdobne:
> > http://www.artima.com/weblogs/viewpost.jsp?thread=98196
>
> S tím souhlasím, nic proti. Sám jsem psal, že ji používám zřídka.
>
> Děkuji za diskusi, štvete mě jen malinko. :-)
>
> Vl.
>
> _______________________________________________
> Python mailing list
> python na py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20150211/672387ef/attachment.html>


Další informace o konferenci Python