[Python-checkins] r82524 - python/branches/py3k/Demo/classes/Complex.py

alexander.belopolsky python-checkins at python.org
Sun Jul 4 00:36:07 CEST 2010


Author: alexander.belopolsky
Date: Sun Jul  4 00:36:06 2010
New Revision: 82524

Log:
Made minimal modifications to pass included tests

Modified:
   python/branches/py3k/Demo/classes/Complex.py

Modified: python/branches/py3k/Demo/classes/Complex.py
==============================================================================
--- python/branches/py3k/Demo/classes/Complex.py	(original)
+++ python/branches/py3k/Demo/classes/Complex.py	Sun Jul  4 00:36:06 2010
@@ -151,13 +151,9 @@
             raise ValueError("can't convert Complex with nonzero im to float")
         return float(self.re)
 
-    def __cmp__(self, other):
+    def __eq__(self, other):
         other = ToComplex(other)
-        return cmp((self.re, self.im), (other.re, other.im))
-
-    def __rcmp__(self, other):
-        other = ToComplex(other)
-        return cmp(other, self)
+        return (self.re, self.im) == (other.re, other.im)
 
     def __bool__(self):
         return not (self.re == self.im == 0)
@@ -190,14 +186,14 @@
 
     __rmul__ = __mul__
 
-    def __div__(self, other):
+    def __truediv__(self, other):
         other = ToComplex(other)
         d = float(other.re*other.re + other.im*other.im)
         if not d: raise ZeroDivisionError('Complex division')
         return Complex((self.re*other.re + self.im*other.im) / d,
                        (self.im*other.re - self.re*other.im) / d)
 
-    def __rdiv__(self, other):
+    def __rtruediv__(self, other):
         other = ToComplex(other)
         return other / self
 
@@ -226,8 +222,9 @@
     print('       ', a, 'and', b, end=' ')
     try:
         result = eval(expr)
-    except:
-        result = sys.exc_info()[0]
+    except Exception as e:
+        print('!!\t!!\t!! error: {}'.format(e))
+        return
     print('->', result)
     if isinstance(result, str) or isinstance(value, str):
         ok = (result == value)
@@ -295,13 +292,6 @@
                     (Complex(1), Complex(0,10), 1),
                     (2, Complex(4,0), 16),
             ],
-            'cmp(a,b)': [
-                    (1, 10, -1),
-                    (1, Complex(0,10), 1),
-                    (Complex(0,10), 1, -1),
-                    (Complex(0,10), Complex(1), -1),
-                    (Complex(1), Complex(0,10), 1),
-            ],
     }
     for expr in sorted(testsuite):
         print(expr + ':')


More information about the Python-checkins mailing list