RE: [python] dotaz-mřížka
Petr Prikryl
Prikryl na skil.cz
Čtvrtek Únor 17 15:08:42 CET 2005
Pavel Kosina napsal...
> Petr Prikryl napsal(a):
> > xrange() je v pohodě jak pro malé, tak pro
> > velké rozsahy. Děsí tě to x na začátku?
> > (Nedělám si legraci, chci si ujasnit, co lidem
> > připadá intuitivnější.)
>
> nevím, možná je to jen víra ;-), ale taky jsem si dělal
> přibližnou statistiku výskytů v python23 a range zvítězilo.
> Nevím kolik přesně, jen tak odhadem jsem to zkouknul. Range
> je takové všeobecnější, zřejmější a já osobně málokdy jsem
> skutečně potřeboval xrange. Ale to je v pohodě, žádná flame
> war proti xrange...
Možná je to tím, že range bude starší. Rozhodně to ale bude
méně efektivní, protože se generuje seznam. To znamená, že
to taky zabírá místo v paměti. V uvedeném příkladě se tedy
vygeneruje 101 seznamů o 10 prvcích. Postupně se možná 99
seznamů zase uvolňuje (možná ještě v rámci těch dvou
zanořených cyklů) -- chvíli to asi potrvá. Pokud se použije
xrange, pak se místo každého seznamu použije objekt o
velikosti nezávislé na rozsahu. Rozdíl v paměťové náročnosti
bude přibližně takový, jako rozdíl mezi seznamem o dané
velikosti a jednou celočíselnou proměnnou. Výkon se bude
lišit zhruba v poměru operace zpřístupnění dalšího prvku
seznamu vůči zvětšení čísla o jedničku. (Jsou to jen odhady.
Konkrétní implementaci jsem nezkoumal).
> >>"bublinová nápověda"). Vždy tam byly paznaky...
> >
> chyba byla že jsem dokumentační nedával jako unicode.
> Jinými slovy to funguje skvěle.
A jaké prostředí, které ukazuje ty bubliny, používáš?
> > Upravil jsem to trochu podle Style guide, ale
> > ne vše.
>
> Style guide?
http://www.python.org/peps/pep-0008.html
> Jo a co ty školičky? Co tím myslíš?
To byl jen nápad. Pokud se někde shromažďují ukázkové
příklady, pak by se to po vhodném doplnění komentářů nebo
nějakého popisu dalo zařadit mezi ně.
Petr
--
Petr Prikryl (prikrylp at skil dot cz)
Další informace o konferenci Python