Portál AbcLinuxu, 26. dubna 2024 22:24


Nástroje: Začni sledovat (3) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
22.9.2011 17:12 luky
Rozbalit Rozbalit vše eval
Odpovědět | Sbalit | Link | Blokovat | Admin
Uvedomujete si, ze eval slouzi k implementaci vyjimek:
eval {
        die "Chyba\n";
}; if ($@ eq "Chyba\n") {
        print "Vyhozena 'Chyba'\n";
} elsif ($@ eq "JinaChyba\n") {
        print "Vyhozena 'JinaChyba'\n";
} else {
        print "Vyhozeno neco jineho: $@\n";
        die; # Vyhodi znovu
}
Josef Kufner avatar 23.9.2011 00:14 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Odpovědět | Sbalit | Link | Blokovat | Admin
Jen tak mimochodem, zkoušel jsi porovnat výpočetní náročnost obou variant algoritmů?
Hello world ! Segmentation fault (core dumped)
26.9.2011 16:09 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Tak v prvním případě jsme vyměnili O(n) za O(n*log(n)), takže je na tom funkcionální varianta o něco hůř. Popravdě se mi nepovedlo vymyslet, jak to celé udělat bez seřazení seznamu. Druhá je lineární, takže tam se náročnost nijak moc nezměnila.
When your hammer is C++, everything begins to look like a thumb.
Josef Kufner avatar 30.9.2011 09:02 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Python pro nezelenáče
print reduce(max, (1, 2, 5, 4, 3))
O(n).
Hello world ! Segmentation fault (core dumped)
30.9.2011 14:59 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Já prvním příkladem nemyslel nalezení největšího čísla, ale logy apache a počítání duplikátů.
When your hammer is C++, everything begins to look like a thumb.
pavlix avatar 30.9.2011 18:13 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Erm, není tohle v Pythonu prasárna?
>>> print(max(1, 2, 5, 4, 3))
5
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
23.9.2011 09:06 CEST
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Odpovědět | Sbalit | Link | Blokovat | Admin
v němž je odsazování součástí syntaxe
mne osobne to strasne vadi, protoze odsazeni lze provadet dvema ruznymi znaky (mezera a tabulator), coz by ani tak moc nevadilo, pokud by se tyto znaky daly pouhym okne v editoru rozeznat, coz je ale dost problem, pro zacatecnika IMHO velkej (protoze nechape, proc jedno prazdny misto neni steny jako jiny prazdny misto)
oddělovačem příkazů a nepovinným odsazováním
je skvela vec, kdyz chce clovek zapsat perl scriptik na jeden radek
mimochodem díky CESTovi za podnětné zadání
Hehe, mel jsem si vymyslet neco lepsiho:) Ale ty tvoje jednoradkovy zapisy se mi zacinaji libit:) Zkusim do toho hada trosku proniknout:)
Bystroushaak avatar 23.9.2011 13:24 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
pro zacatecnika IMHO velkej (protoze nechape, proc jedno prazdny misto neni steny jako jiny prazdny misto)
Problém to není. S pár začátečníky v pythonu jsem se už setkal a pochopili to okamžitě (konec konců, když nejsou schopní pochopit tohle, jen stěží pochopí programování v pythonu). Jinak v netriviálních editorech není problém si zobrazení whitespaces povolit (sám to tak mám).
Saljack avatar 23.9.2011 14:35 Saljack | skóre: 28 | blog: Saljack | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
mne osobne to strasne vadi, protoze odsazeni lze provadet dvema ruznymi znaky (mezera a tabulator), coz by ani tak moc nevadilo, pokud by se tyto znaky daly pouhym okne v editoru rozeznat, coz je ale dost problem, pro zacatecnika IMHO velkej (protoze nechape, proc jedno prazdny misto neni steny jako jiny prazdny misto)
No a co bude dělat, až uvidí = a ==, to už bude úplně v koncích. Navíc nevidím rozdíl mezi odsazením a {}. Navíc si myslím, že začátečník nebude psát kód v nějakém textovém editoru typu notepad.
Sex, Drugs & Rock´n Roll.
23.9.2011 18:33 luky
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Navíc nevidím rozdíl mezi odsazením a {}.
Uz jste nekdy kopiroval kod z webu? Odsazeni je obcas udelane tak, ze se pri kopirovani pokazi.
pavlix avatar 23.9.2011 20:52 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Python pro nezelenáče
A je potřeba opravit, bez ohledu na to, jestli je python-style nebo C-style.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
23.9.2011 23:20 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Akorát že v jednom případě to jde udělat automaticky a v druhém ne.
Ještě na tom nejsem tak špatně, abych četl Viewegha.
pavlix avatar 24.9.2011 00:17 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Python pro nezelenáče
To je pravda. Teda, ne že by mě to nějak trápilo.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
23.9.2011 15:29 SPM | skóre: 28
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Tak míchat to je celkem blbost... každej editor víceméně to dělá pořád stejně, takže při psaní nového souboru je to jedno, pokud jsem někde něco stáhnul, tak to převedu na to, co dělá můj editor (to je celkem sranda) a pokud je to nějakej týmovej projekt, tak to chce ty pravidla nastavit (ale tam zase nebude úplný začátečník). Ono to tak moc horké nebude...
rADOn avatar 23.9.2011 18:28 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Musim se pridat. Odsazovani je vyslovene opruz zezacatku, nez si clovek uvedomi ze nebojuje s jazykem, ale s editorem. Pak si proste sedne, projde svoje oblibene editory, nastavi si vsude stejnou politiku a behem peti minut problem solved.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
Gilhad avatar 25.9.2011 12:03 Gilhad | skóre: 20 | blog: gilhadoviny
Rozbalit Rozbalit vše Re: Python pro nezelenáče
pokud by se tyto znaky daly pouhym okne v editoru rozeznat, coz je ale dost problem

ve vimu:
:set lcs=tab\:\|- list
26.9.2011 16:00 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče

mne osobne to strasne vadi, protoze odsazeni lze provadet dvema ruznymi znaky (mezera a tabulator)
To je pravda, i když by to zvedlo vlnu výkřiků - Python ne, tam se odsazuje tabulátory/mezerami.
When your hammer is C++, everything begins to look like a thumb.
rADOn avatar 26.9.2011 18:17 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Mno tak je potreba hlasite rici, ze v pythonu se odsazuje tabem nebo mezerou a kdo to bude kombinovat, tomu koule upadnou.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
27.9.2011 09:19 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
On je bohužel python 2 v tomto ohledu velice benevolentní, takže mixování tabelátorů a mezer mu nijak nevadí. Až python3 vyhodí v tomto případě TabError.
$ cat <<EOF > pok.py
PROG="""
def foo():
        print("8 mezer")
\tprint("tab")
\tif True:
\t        print("tab + 8 mezer")

foo()
"""

exec(PROG)
EOF
When your hammer is C++, everything begins to look like a thumb.
27.9.2011 17:30 SPM | skóre: 28
Rozbalit Rozbalit vše Re: Python pro nezelenáče
naštěstí aspoň některé editory tak benevolentní nejsou a začnou řvát :)
2.10.2011 22:48 Sten
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Já používám v Pythonu (i jiných jazycích) kombinované odsazování: tabulátor rozlišuje scope a mezera zarovnává u víceřádkových příkazů. Výhodou je, že i se změnou délky tabulátoru zarovnání pořád sedí a vy si můžete zvolit vlastní, pro vás ideální délku tabulátoru. Jestli mi to ale Python3 zakáže, budu zlý a naštvaný :-)
Bystroushaak avatar 23.9.2011 13:28 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Odpovědět | Sbalit | Link | Blokovat | Admin
Pěkný článek. U vymýšlení řešení toho python oneline contestu jsem se dost inspiroval článkem Python Tips, Tricks, and Hacks.
blog.rfox.eu
robotics avatar 24.9.2011 08:04 robotics | skóre: 29 | blog: o_vsem_moznem
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Odpovědět | Sbalit | Link | Blokovat | Admin
Ten poslední příklad s tečkama čárkama dvojtečkama a pomlčkama mi připadá jak nějaká morzeovka :-).
Používejte Windows.
________________ avatar 25.9.2011 03:03 ________________ | skóre: 5 | blog: _
Rozbalit Rozbalit vše Re: Python pro nezelenáče
Odpovědět | Sbalit | Link | Blokovat | Admin
chcel som autora článku pocváliť za článok, ale nevidím tu tlačítko páči sa mi to. tak asi pojdem "o dům dál"
Gilhad avatar 25.9.2011 12:04 Gilhad | skóre: 20 | blog: gilhadoviny
Rozbalit Rozbalit vše Re: Python pro nezelenáče
To je fakt, u domu se dají páčit dveře, okna, ...
xxxs avatar 25.9.2011 13:17 xxxs | skóre: 25 | blog: vetvicky
Rozbalit Rozbalit vše Re: Python pro nezelenáče
ked to nejde okom, skus vyhladavanie. zadaj toto: Hodnocení:

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.