瀏覽代碼

edit adapter.py

Uri Mogilevsky 10 年之前
父節點
當前提交
bdde1d900f
共有 1 個文件被更改,包括 9 次插入9 次删除
  1. 9 9
      adapter.py

+ 9 - 9
adapter.py

@@ -41,14 +41,14 @@ class Adapter(object):
 
     >>> objects = []
     >>> dog = Dog()
-    >>> objects.append(Adapter(dog, dict(make_noise=dog.bark)))
+    >>> objects.append(Adapter(dog, make_noise=dog.bark))
     >>> cat = Cat()
-    >>> objects.append(Adapter(cat, dict(make_noise=cat.meow)))
+    >>> objects.append(Adapter(cat, make_noise=cat.meow))
     >>> human = Human()
-    >>> objects.append(Adapter(human, dict(make_noise=human.speak)))
+    >>> objects.append(Adapter(human, make_noise=human.speak))
     >>> car = Car()
     >>> car_noise = lambda: car.make_noise(3)
-    >>> objects.append(Adapter(car, dict(make_noise=car_noise)))
+    >>> objects.append(Adapter(car, make_noise=car_noise))
 
     >>> for obj in objects:
     ...     print('A {} goes {}'.format(obj.name, obj.make_noise()))
@@ -58,7 +58,7 @@ class Adapter(object):
     A Car goes vroom!!!
     """
 
-    def __init__(self, obj, adapted_methods):
+    def __init__(self, obj, **adapted_methods):
         """We set the adapted methods in the object's dict"""
         self.obj = obj
         self.__dict__.update(adapted_methods)
@@ -71,13 +71,13 @@ class Adapter(object):
 def main():
     objects = []
     dog = Dog()
-    objects.append(Adapter(dog, dict(make_noise=dog.bark)))
+    objects.append(Adapter(dog, make_noise=dog.bark))
     cat = Cat()
-    objects.append(Adapter(cat, dict(make_noise=cat.meow)))
+    objects.append(Adapter(cat, make_noise=cat.meow))
     human = Human()
-    objects.append(Adapter(human, dict(make_noise=human.speak)))
+    objects.append(Adapter(human, make_noise=human.speak))
     car = Car()
-    objects.append(Adapter(car, dict(make_noise=lambda: car.make_noise(3))))
+    objects.append(Adapter(car, make_noise=lambda: car.make_noise(3)))
 
     for obj in objects:
         print("A {0} goes {1}".format(obj.name, obj.make_noise()))