Přeposílám ještě pár poznatků Jiřího Znamenáčka, který Python momentálně používá při výuce... Petr ______________________ Původní zpráva: ________________________ > Od: "Jiří Znamenáček" > Datum: 06.06.2011 11:28 > Předmět: Re: Re: [python] učit Python 2.x nebo 3.x > [...]Pár komentářů mám, ale řešení ne :) > Nečteš náhodou tuhle konferenci? Ptá se tam nějaký člověk, > jestli na střední škole začít učit Python 3 nebo Python 2. Zajímavá otázka. S Pythonem 2.7 nemám vůbec žádné zkušenosti, jen matnou představu z 2.6. Vyjádřil bych se spíš obecně 2.x versus 3.x. Dva komentáře obecně: ~ Python 3.x je sice zpětně nekompatibilní, ale troufám si tvrdit, že ke škodě jazyka příliš málo – věcí na opravení (a zbavení se historického balastu) tam bohužel i tak zbyla spousta :-( ~ Ale přes to všechno je řada 3.x mnohem, hm, logičtější jazyk. Zvláště rozšíření použití iterátorů a sjednocení všehokoliv (nechci říkat zrovna syntaxe). Prostě kód v Pythonu 3.x v mnoha ohledech působí „přirozeněji“. Z hlediska výuky: ~ Chcete-li studenty seznámit s programováním na dynamicky typovaném jazyce, je Python asi pořád jedna z lepších (a čitelnějších) voleb. (I když už léta ztrácím přehled, takže...) ~ Python vám vnutí celkem rozumnou štábní kulturu. Počítejte ale s tím, že i v jeho dosti pevných mantinelech se najdou lidi, kteří ji ohnou takovým způsobem, že se nebudete stačit divit :-) ~ I v trojkovém Pythonu je spousta ošklivých věcí, ale pořád méně než ve dvojkovém. ~ Mimochodem řada 3.x působí zatím skoro celou dobu jako testovací beta, takže jestli trojkový Python, tak rovnou až 3.2 :-) Ten vzal zpátky některé podivné změny a vypadá, že se vývoj konečně trochu ustálil. Tudíž neslaný-nemastný závěr: ~ Je-li vaším hlavním úkolem zpracovávání textu v jakémkoliv jiném kódování než ASCII, zapomeňte na Python 2.x a používejte rovnou 3.1+. (Nebo si aspoň důkladně ověřte, že autor knihovny, kterou zrovna potřebujete, s Unicodem počítal...) ~ Potřebujete-li spolupráci externích knihoven, důkladně si nastudujte, zda jsou k dispozici pro Python 3.x. Většinou to nebude pravda a budete muset použít Python 2.x. Osobně si pořád (po dvaceti letech :-) myslím, že základy programování se nejlíp vysvětlují na Karlovi. Logo je pěkné, ale už zbytečně obsáhlé. A „normální“ jazyky – Python v to počítaje – jsou z tohohle hlediska už úplně mimo. Popravdě bych byl radikální a kdybych mohl, tak bych povinně předepsal NEJDŘÍV kurs Haskellu nebo něčeho podobného funkcionálního, a AŽ POTOM bych nasadil procedurální jazyk. Jirka _______________________________________________ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python