<div dir="ltr"><span style="color:rgb(33,33,33)">> 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. <br>Je rozdil mezi "znat" a pouzivat. Znat urcite. Ale psat neprehledne nelze obhajovat tim, ze jini tak nekdy pisi taky.<br><br>> 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.</span><div>To by me zajimalo. Jak je pouziti stdlibky vic safe, jak si na to vlastni kod?<br>Neprijde mi moc stastny chtit ridit implementaci, ktera je jinde vyresena a tisickrat vyzkousena. (Kdo z vas z hlavy vi, jestli nemuze byt otaznik v nejaky obskurni URL v jinym kotextu? Treba nejak escapovatny v user:pass segmentu? Co kdyz URL konci `#anchor_blabla`?) Tohle je trivialni pripad, ale jak rikas "je to o pristupu". Falesny pocit, ze kdyz si napisu neco sam, tak to je lepsi, jak pouzit neco hotovyho.<br><br>Nepredpokladam, ze core te aplikace lezi v networkingu, tak by se ho nemela snazit resit. Od toho jsou hotove knihovny (urlparse), ktere to umi a resi edge case, o kterych mozna ani nevite, ze je nevite. <br style="color:rgb(33,33,33)"></div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Apr 17, 2018 at 11:02 AM Vláďa Macek <<a href="mailto:macek@sandbox.cz">macek@sandbox.cz</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div class="m_-3291668248611862430moz-cite-prefix">Banalita to rozhodně je. :-)<br>
<br>
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.<br>
<br>
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í.<br>
<br>
Č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í<br>
<br>
reload_redirect['Location'] += '¶m=1' if '?' in
reload_redirect['Location'] else '?param=1'<br>
<br>
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.<br>
<br>
Všichni jsme nadšenci. :-) Děkuju za obohacení.<br>
<br>
V.</div></div><div text="#000000" bgcolor="#FFFFFF"><div class="m_-3291668248611862430moz-cite-prefix"><br>
<br>
On 15.4.2018 10:16, Petr Messner wrote:<br>
</div></div><div text="#000000" bgcolor="#FFFFFF">
<blockquote type="cite">
<div dir="ltr">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.
<div><br>
</div>
<div>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 <a href="https://www.python.org/about/" target="_blank">https://www.python.org/about/</a>
stojí "is friendly & easy to learn", tak se tím můžeme
inspirovat a nevymýšlet blbosti :)</div>
<div><br>
</div>
<div>Podle mě je celé tohle banalita. Ale jestli to u někoho
spouští impostor syndrom, tak je to špatný a zbytečný.</div>
<div>
<div><br>
</div>
<div>PM<br>
<div class="gmail_extra"><br>
<div class="gmail_quote">Dne 15. dubna 2018 9:30 Jaroslav
Vysoký <span dir="ltr"><<a href="mailto:jaroslav.vysoky@gmail.com" target="_blank">jaroslav.vysoky@gmail.com</a>></span>
napsal(a):<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div dir="ltr">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.
<div><br>
</div>
<div>Jarda V. </div>
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">Dne 14. dubna 2018 21:50
Vláďa Macek <span dir="ltr"><<a href="mailto:macek@sandbox.cz" target="_blank">macek@sandbox.cz</a>></span>
napsal(a):
<div>
<div class="m_-3291668248611862430gmail-h5"><br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Děkuju
všem reagujícím. :-)<br>
<br>
Taky bych asi v tomto případě neparsoval a
nedělal funkci, pokud je to<br>
jednoúčelový řádek s fixním parametrem a je
to v projektu jednou.<br>
<br>
Tohle mám za docela čitelný:<br>
<br>
reload_redirect['Location'] += '?&'['?'
in reload_redirect['Location']] +<br>
'param=1'<br>
<br>
Hezký večer,<br>
<br>
V.<br>
<div class="m_-3291668248611862430gmail-m_1518109136374723586HOEnZb">
<div class="m_-3291668248611862430gmail-m_1518109136374723586h5"><br>
_______________________________________________<br>
Python mailing list<br>
<a href="mailto:python@py.cz" target="_blank">python@py.cz</a><br>
<a href="http://www.py.cz/mailman/listinfo/python" rel="noreferrer" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
<br>
Visit: <a href="http://www.py.cz" rel="noreferrer" target="_blank">http://www.py.cz</a><br>
</div>
</div>
</blockquote>
</div>
</div>
</div>
<br>
</div>
<br>
_______________________________________________<br>
Python mailing list<br>
<a href="mailto:python@py.cz" target="_blank">python@py.cz</a><br>
<a href="http://www.py.cz/mailman/listinfo/python" rel="noreferrer" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
<br>
Visit: <a href="http://www.py.cz" rel="noreferrer" target="_blank">http://www.py.cz</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</div>
<br>
<fieldset class="m_-3291668248611862430mimeAttachmentHeader"></fieldset>
<br>
<pre>_______________________________________________
Python mailing list
<a class="m_-3291668248611862430moz-txt-link-abbreviated" href="mailto:python@py.cz" target="_blank">python@py.cz</a>
<a class="m_-3291668248611862430moz-txt-link-freetext" href="http://www.py.cz/mailman/listinfo/python" target="_blank">http://www.py.cz/mailman/listinfo/python</a>
Visit: <a class="m_-3291668248611862430moz-txt-link-freetext" href="http://www.py.cz" target="_blank">http://www.py.cz</a>
</pre>
</blockquote>
<p><br>
</p>
</div><div text="#000000" bgcolor="#FFFFFF"><pre class="m_-3291668248611862430moz-signature" cols="75">--
Vláďa Macek | <a href="tel:608%20978%20164" value="+420608978164" target="_blank">+420 608 978 164</a> | Please consider printing this message.
Aktuální nabídka: Školení Python+Django v Liberci
<a class="m_-3291668248611862430moz-txt-link-freetext" href="https://www.scripteo.cz/skoleni/skoleni-python-a-django.html" target="_blank">https://www.scripteo.cz/skoleni/skoleni-python-a-django.html</a>
</pre>
</div>
_______________________________________________<br>
Python mailing list<br>
<a href="mailto:python@py.cz" target="_blank">python@py.cz</a><br>
<a href="http://www.py.cz/mailman/listinfo/python" rel="noreferrer" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
<br>
Visit: <a href="http://www.py.cz" rel="noreferrer" target="_blank">http://www.py.cz</a><br>
</blockquote></div>