<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

2013/11/20  <<a href="mailto:bertikster@gmail.com">bertikster@gmail.com</a>>:<br>
<div class=""><div class="h5">> mám list objektu, a potřebuji zkontrolovat jestli se jeden určitý parametr objektu rovná proměnné, a chtěl bych se zeptat, jestli to jde udělat elegantněji než takhle? Jde nějak spojit první dva řádky? Jsem pořád docela začátečník v Pythonu, takže se předem omlouvám, pokud je to velmi jednoduché, nebo to nejde zjednodušit.<br>


><br>
> for objekt in list_objektu:<br>
>     if "nazev"==<a href="http://objekt.name" target="_blank">objekt.name</a>:<br>
>         # něco to dále dělá<br></div></div></blockquote><div> </div><div><div>(bez znalosti kontextu) si myslím, že to lépe nejde. To Tvoje je</div><div>určitě čitelnější, než dělat list comprehension nebo generator</div>

<div>expression. Jiná věc by byla, kdybys to takhle procházel mnohokrát</div><div>nebo hledal různé hodnoty. Pak by třeba mělo smysl udělat si dict:</div><div><br></div><div>name_objekt_map = collections.defaultdict(lambda:[])</div>

<div>for i in objekt:</div><div>  name_objekt_map[<a href="http://i.name">i.name</a>].append(i)</div><div><br></div><div>for objekt in name_objekt_map["nazev"]:</div><div>    # něco to dále dělá</div><div><br></div>

<div>--</div></div><div>Petr</div><div>____________________<br></div></div><div dir="ltr"><div><a href="http://pysk.blog.root.cz/" target="_blank">http://pysk.blog.root.cz/</a><br></div></div>
</div></div>