Tady se slusi upozornit na nekolik veci: neznam zadny team python programatoru kde by konstrukce spolehajici se na pristup do retezce na zaklade bool hodnoty prosla code review, ja to videt v nejakem projektu tak okamzite otviram ticket protoze to se proste nedela, je to necitelne.
Testovani na pritomnost '?' v URL neni zadna zaruka niceho, muze se to rozbit na spoustu zpusobu, napriklad: http://user:he?slo@localhost:80 https://server.com#whatever?and_anything_else A ne, u zadneho code review bych nepripustil argument, ze "to se u nasich url stat nemuze". Kod ktery se spoleha na special cases je spatne, o tom nemuze byt diskuze. Honza Král E-Mail: honza.k...@gmail.com Phone: +420 606 678585 2018-04-17 11:02 GMT+02:00 Vláďa Macek <ma...@sandbox.cz>: > Banalita to rozhodně je. :-) > > Ano, svým způsobem to je ekvilibristika, ale založená na pevných a > jednoduchých pravidlech Pythonu. Hodí se to znát, třeba už jen pro případ > čtení cizího kódu. Zajímavé na tom je, že na rozdíl od použití složitější > funkce jako urlparse je výraz 'xy'[somebool] zcela safe, řízení zůstává u mě > jako u programátora. Je to o přístupu. > > Taky je fakt, že rozdělení na dva řádky by nikoho nezabilo a umožní bool > podmínku popsat identifikátorem. Řešení Petra Blahoše se mi líbí. > > Čitelnost toho příkazu zhoršuje už samotné reload_redirect['Location'], > které máme v některých případech vnucené. Jindy ne. Osobně nemám rád hranaté > závorky. Když to jde, tak i na "indexaci" slovníku používám AttrDict. Asi > bych nakonec vybral řešení > > reload_redirect['Location'] += '¶m=1' if '?' in > reload_redirect['Location'] else '?param=1' > > i přes mírné porušení DRY: Volil bych zřejmě jinak v případě, že by nešlo o > jediný výskyt v projektu a navíc s pevným stringem. > > Všichni jsme nadšenci. :-) Děkuju za obohacení. > > V. > > > On 15.4.2018 10:16, Petr Messner wrote: > > Pro programátora by tohle mělo být čitelné, ale musel jsem se na to pár > sekund dívat, než jsem si všiml, o co jde. Klíčové je asi uvědomit si, že > False se chová jako 0 a True jako 1. Dokonce True + True == 2. Pro lidi > přicházející z C je toto očekávatelné, ale ostatní tohle nemusejí vědět. V > mých/našich zdrojových kódech bych tohle mít nechtěl. > > Asi bych s pojmy typu "opravdový pythonista" nebo "opravdový kód" raději > vůbec nepracoval. Zrovna Python je jazyk, který má být jednoduchý a > přístupný pro kohokoliv, i pro skoro-neprogramátory. Na > https://www.python.org/about/ stojí "is friendly & easy to learn", tak se > tím můžeme inspirovat a nevymýšlet blbosti :) > > Podle mě je celé tohle banalita. Ale jestli to u někoho spouští impostor > syndrom, tak je to špatný a zbytečný. > > PM > > Dne 15. dubna 2018 9:30 Jaroslav Vysoký <jaroslav.vys...@gmail.com> > napsal(a): >> >> Nejsem python profesionál, pouze (snad) nadšenec a propagátor, ale fakt by >> mě zajímalo, jestli je tohle "opravdovými" pythonisty považováno za čitelné. >> Já jsem to sice nakonec pochopil, a kdyby se podobné konstrukce vyskytovaly >> v kódu častěji, tak bych si na to jistě i zvykl, ale na první pohled mi to >> přijde jako ekvilibristika. >> >> Jarda V. >> >> >> Dne 14. dubna 2018 21:50 Vláďa Macek <ma...@sandbox.cz> napsal(a): >> >>> Děkuju všem reagujícím. :-) >>> >>> Taky bych asi v tomto případě neparsoval a nedělal funkci, pokud je to >>> jednoúčelový řádek s fixním parametrem a je to v projektu jednou. >>> >>> Tohle mám za docela čitelný: >>> >>> reload_redirect['Location'] += '?&'['?' in reload_redirect['Location']] + >>> 'param=1' >>> >>> Hezký večer, >>> >>> V. >>> >>> _______________________________________________ >>> Python mailing list >>> python@py.cz >>> http://www.py.cz/mailman/listinfo/python >>> >>> Visit: http://www.py.cz >> >> >> >> _______________________________________________ >> Python mailing list >> python@py.cz >> http://www.py.cz/mailman/listinfo/python >> >> Visit: http://www.py.cz >> > > > > _______________________________________________ > Python mailing list > python@py.cz > http://www.py.cz/mailman/listinfo/python > > Visit: http://www.py.cz > > > -- > Vláďa Macek | +420 608 978 164 | Please consider printing this message. > > Aktuální nabídka: Školení Python+Django v Liberci > https://www.scripteo.cz/skoleni/skoleni-python-a-django.html > > > _______________________________________________ > Python mailing list > python@py.cz > http://www.py.cz/mailman/listinfo/python > > Visit: http://www.py.cz > _______________________________________________ Python mailing list python@py.cz http://www.py.cz/mailman/listinfo/python Visit: http://www.py.cz