přejít na obsah přejít na navigaci

Linux E X P R E S

Příspěvky Python 3 (4): výnimky a podmienky

Python 3 (4): výnimky a podmienky
Wrunx 21. 05. 2015, 18:22:06
Odpovědět  Odkaz 
Dobré pokračování!
Mohu-li jen maličko přispět k těm binárním operacím, tak XOR v Pythonu supluje znaménko ^
>>>7^3
výsledek je 4
Případně - pokud se programátorovi nechce implementovat si XOR vlastní - je k dispozici v knihovně operator
>>> from operator import xor
>>>xor(7,3)
výsledek je 4.
Samosebou v Pythonu najdeme i bitový posun, SHL a SHR v podobě symbolů >.
Krom toho Python vlastní znaménko ~ (tilda) coby komplement, neboli doplněk.
>>> ~3
výsledek je -4
Python 3 (4): výnimky a podmienky
Wrunx 21. 05. 2015, 18:25:25
Odpovědět  Odkaz 
Oj, vidím že mi editor "sežral" dvojité šipečky, takže mám v příspěvku momentálně pěknou hloupost... no, co se dá dělat, takže bitové posuny prosím např. na http://www.tutorialspoint.com/python/bitwise_operators_example.htm
:-)
Python 3 (4): výnimky a podmienky
fd 25. 05. 2015, 15:57:41
Odpovědět  Odkaz 
Hmm ja bych pripodotkl, ze onen priklad s vyjimkou je presne pripad, za ktery bych osobne (a nejen osobne) kazdemu tvurci zlomil nejen ruce.

Protoze vstup MUSI byt osetren jeste PRED tim, nez se pouzije. A to VZDY. Duvod je pomerne primitivni a jasny - ta funkce ve ktere se vstup pouzije muze uplne klidne v mnoha pripadech projit, a to presto, ze vstup je zcela vadny. A spolehat se na to, ze nekde neco skonci vyjimkou ...

Nemluve o tom, ze to je jeden z mnoha krasnych zpusobu jak neco hacknout.
Python 3 (4): výnimky a podmienky
Pavel 29. 05. 2015, 16:05:28
Odpovědět  Odkaz 
Dík za články, snad ti to vydrží a dostaneš se daleko. Držím palce
Python 3 (4): výnimky a podmienky
jose 15. 09. 2015, 22:44:48
Odpovědět  Odkaz 
> finally .. a je vlastne jedno, či sa kód nachádza v danom bloku alebo mimo neho.

tak to si nemyslim, skuste si trebars toto:

try:
3/0
except ValueError as e:
print "chyba!"
finally:
print "finally blok"

print "ideme dalej"
Python 3 (4): výnimky a podmienky
Tom 7. 08. 2019, 16:10:52
Odpovědět  Odkaz 
Ještě k těm výjimkám, chybí tady jak ty výjimky vyvolávat
raise Exception("some exception text")