Vlákno názorů k článku Nový chřestýš (1) od Kakihara - Python neovladam, nicmene se na nej chystam(o zkouskovym...

  • Článek je starý, nové názory již nelze přidávat.
  • 11. 1. 2005 1:30

    Kakihara (neregistrovaný)

    Python neovladam, nicmene se na nej chystam(o zkouskovym snad bude konecne cas;)). Zarazi me vsak jedna vec:
    Proc vlastne existuji typy list i tuple? Neni to v podstate jenom kvuli usnadneni prace interpretru-rychlejsi prace se statickou promennou? Pokud ano, tak mi prijde nesystemove. Proc by se mel programator ve vysokourovnovem jazyce starat o rychlost programu? O to by se mel starat interpretr/prekladac/VM. (pryc jsou(snad) casy, kdy jsme psali 'xor ax,ax';))
    Z podobneho soudku mi prijdou strucne generatory...
    Snad se mylim, python skoro neznam, ale tohle me trosku zarazilo...
    BTW:Kdyz jsem u toho prekladace, nevite nekdo, jak to vypada s ironpythonem?Dost me laka mod_mono ve spojeni s pythonem...<flame>PHP SUXX</flame> :D

  • 11. 1. 2005 1:59

    JP (neregistrovaný)

    Hlavní argumenty pro existenci tuple jsou jiné. Především klasický seznam není možno použít jako klíč ve slovníku, protože je možné měnit jeho obsah a nelze proto zaručit konstantní hash hodnotu.

    Generátorový výraz jako takový samozřejmě nutný není, stejně jako "stručný seznam". Oproti klasickému generátoru je výhoda pouze v lepší čitelnosti, pokud se použije s rozumem. Generátor jako takový má samozřejmě výhod spoustu, ikdyž i on by jistě šel nahradit třeba instancí nějaké třídy, ale v mnohých případech opět na úkor čitelnosti programu.

  • 11. 1. 2005 3:48

    JS (neregistrovaný)

    Odpoved z trosku jineho uhlu:

    1. Tuple a list maji v Pythonu jiny ucel. Tuple se obvykle pouziva namisto struktury nebo zaznamu (konstantni pocet polozek ruzneho typu), napriklad pri vraceni vice hodnot z funkce. Kdezto list se pouziva obvykle jako seznam nebo pole (promenlivy pocet polozek stejneho typu).

    2. Strucne generatory jsou prirozene zobecneni strucnych seznamu na iteratory. Strucne seznamy byly zavedeny pro lepsi citelnost funkcionalnich konstrukci, ktere predtim vyuzivaly vestavenych funkci map a filter. A jsou velmi uzitecne, pokud zkusite v Pythonu neco napsat, protoze umoznuji zkratit nepodstatne (z hlediska cteni kodu) smycky do jedne srozumitelne radky.