Mercurial > hg > config
diff python/example/monkeypatch.py @ 718:cd9d65e6e2ab
monkeypatch example
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Thu, 30 Oct 2014 15:22:29 -0700 |
parents | |
children |
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))