Honza Král E-Mail: honza.k...@gmail.com Phone: +420 606 678585
2016-08-28 17:40 GMT+02:00 Petr Messner <petr.mess...@gmail.com>: > Díky Honzo za odkaz. > > Jinak - Python, Ruby, Java, C++, na jazyku nezáleží... Musím vědět, jestli > daná operace manipuluje s některým svým operandem, nebo vytváří novou > hodnotu. A protože jsou stringy v Pythonu immutable, tak jako programátor > bych měl tušit, že se bude kopírovat. A dát si pozor na případy, kdy se bude > kopírovat furt dokola. > > Že to pypy nějak umí optimalizovat je hezké, ale i kdybych ho používal, tak > fakt není dobré spoléhat se na to, že mi překladač opraví chybu v samotném > návrhu algoritmu. stale plati, ze mnohem dulezitejsi nez kompilator je programator - pouzivam tak to, co dava z hlediska kodu (nikoli kompilatoru nejvetsi smysl). Python s tim pocita a je na to zarizeny. Snazit se o takove optimalizace vetsinou prinasi vice problemu nez uzitku. A to i kdyz odhledneme od problemu spojenych s tim, ze python ma nekolik implementaci ktere se chovaji jinak. > > Petr Messner > > 28. 8. 2016 v 17:04, Honza Král <honza.k...@gmail.com>: > >> 2016-08-28 16:51 GMT+02:00 Jirka Vejrazka <jirka.vejra...@gmail.com>: >>> Jenom poznamka ne okraj: >>> >>> "nedělej skládání řetězců stylem txt += part, je to strašně pomalé (O(n^2) >>> místo O(n)).. Z txt si udělej list a používej append: txt.append(part) a na >>> konci "".join(txt)." >>> >>> Tohle platilo nekdy do vydani Pythonu 2.5. V te verzi bylo spojovani retezcu >>> pomoci += vyrazne zrychleno a dnes uz to neni takove vykonove omezeni, jako >>> driv. >> >> Pokud je tech textu vice, .join() je stale lepsi, vice detailu: >> https://youtu.be/odjpaKL-Fsg?t=20m45s >> >>> >>> Ale je fakt, ze ''.join pouzivam ze zvyku taky :) >>> >>> Jirka >>> >>>> On 28 August 2016 at 13:52, Petr Messner <petr.mess...@gmail.com> wrote: >>>> >>>> >>>> co takhle tohle? >>>> >>>> >>>> <verse>a b <mark sID="x"> c d</verse><verse>e f<mark eID="x"> g h</verse> >>>> >>>> >>>> Oprava: >>>> >>>> <verse>a b <mark sID="x"/> c d</verse><verse>e f<mark eID="x"/> g >>>> h</verse> >>>> >>>> PM >>>> >>>> _______________________________________________ >>>> 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 > _______________________________________________ > 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