summaryrefslogtreecommitdiff
path: root/misc/boxPrint.py
diff options
context:
space:
mode:
Diffstat (limited to 'misc/boxPrint.py')
-rw-r--r--misc/boxPrint.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/misc/boxPrint.py b/misc/boxPrint.py
new file mode 100644
index 0000000..0a97b70
--- /dev/null
+++ b/misc/boxPrint.py
@@ -0,0 +1,21 @@
+#!python3
+
+#Chapter 10 boxPrint Raise Exception
+
+def boxPrint(symbol, width, height):
+ if len(symbol) != 1:
+ raise Exception('Symbol must be a single character.')
+ if width <= 2:
+ raise Exception('Width must be greater than 2.')
+ if height <= 2:
+ raise Exception('Height must be greater than 2.')
+ print(symbol * width)
+ for i in range(height -2):
+ print(symbol + (' ' * (width -2)) + symbol)
+ print(symbol + width)
+
+for sym, w, h in (('*', 4, 4), ('0', 20, 5), ('x', 1, 3), ('ZZ', 3, 3)):
+ try:
+ boxPrint(sym, w, h)
+ except Exception as err:
+ print('An exception happened: ' + str(err))