Outline for March 5, 2018
Homework: due March 6, 2018 at 11:59pm
Fun problem: number of grains of rice on the chessboard [
rice_chess.py
]
Character/integer conversions [
chr.py
][
ord.py
]
Cæsar cipher (shift cipher) [
caesarenc.py
][
caesardec.py
]
Common exceptions
ZeroDivisionError
— attempt to divide (or take the remainder of) something by 0
TypeError
— operation or function applied to operand of wrong type
SyntaxError
— Python parser encountered a malformed statement
NameError
— local or global name is not found
ValueError
— built-in function or operation applied to operator with illegal value
EOFError
— input function encounters an end of file
Keyboard Interrupt
— user hit the interrupt key (usually control-C)
Handling exceptions
except
[
except0.py
]
except
exceptcode
[
except1.py
]
else
[
except2.py
]
except
exceptcode
as
msgvar
[
except3.py
]
finally
[
except4.py
]
Exceptions in a function: who handles them? [
except5.py
][
except6.py
]
Using global variables as error flags [
except6a.py
]
raise
exceptcode
message
[
except7.py
]
Online Python documentation
JSON [
json-ex.py
]
What it is
json.loads
json.dumps
Matt Bishop
Department of Computer Science
University of California at Davis
Davis, CA 95616-8562 USA
Last modified: Version of March 5, 2018 at 7:20PM
Winter Quarter 2018
You can get a PDF version of this