changeset 718:cd9d65e6e2ab

monkeypatch example
author Jeff Hammel <k0scist@gmail.com>
date Thu, 30 Oct 2014 15:22:29 -0700
parents d6f659169b49
children 7c4ee496794c
files python/example/monkeypatch.py
diffstat 1 files changed, 21 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/python/example/monkeypatch.py	Thu Oct 30 15:22:29 2014 -0700
@@ -0,0 +1,21 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+import argparse
+import sys
+
+__all__ = ['main']
+
+class ExampleClass(object):
+    def __init__(self, to_patch):
+        if to_patch:
+            self.output = lambda x, y: 'Patched!'
+    def output(self, x, y):
+        return '[{}] "{}"'.format(x, y)
+
+
+if __name__ == '__main__':
+    obj = ExampleClass(False)
+    print (obj.output(1, 2))
+    newobj = ExampleClass(True)
+    print (newobj.output(3, 4))