summaryrefslogtreecommitdiffstats
path: root/Doc/lib/required_1.py
diff options
context:
space:
mode:
Diffstat (limited to 'Doc/lib/required_1.py')
-rwxr-xr-xDoc/lib/required_1.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/Doc/lib/required_1.py b/Doc/lib/required_1.py
new file mode 100755
index 0000000..44d5b30
--- /dev/null
+++ b/Doc/lib/required_1.py
@@ -0,0 +1,20 @@
+import optparse
+
+class OptionParser (optparse.OptionParser):
+
+ def check_required (self, opt):
+ option = self.get_option(opt)
+
+ # Assumes the option's 'default' is set to None!
+ if getattr(self.values, option.dest) is None:
+ self.error("%s option not supplied" % option)
+
+
+parser = OptionParser()
+parser.add_option("-v", action="count", dest="verbose")
+parser.add_option("-f", "--file", default=None)
+(options, args) = parser.parse_args()
+
+print "verbose:", options.verbose
+print "file:", options.file
+parser.check_required("-f")