File tree Expand file tree Collapse file tree 1 file changed +30
-0
lines changed
Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Original file line number Diff line number Diff line change @@ -102,3 +102,33 @@ def __sort__(self, key=None):
102102 self .__x .sort (key = key )
103103 else :
104104 self .__x .sort ()
105+
106+ def __floordiv__ (self , other ):
107+ """
108+ Return the floor division of the integer represented by ``self``
109+ by ``other``.
110+
111+ EXAMPLES::
112+
113+ sage: factor(100) // factor(2)
114+ 2 * 5^2
115+ sage: factor(100) // 3
116+ 3 * 11
117+ sage: factor(100) // 0
118+ Traceback (most recent call last):
119+ ...
120+ ZeroDivisionError: integer division or modulo by zero
121+ """
122+ numer = self .value ()
123+
124+ try :
125+ if hasattr (other , 'value' ):
126+ denom = other .value ()
127+ else :
128+ denom = other
129+
130+ quotient = numer // denom
131+ return quotient .factor ()
132+
133+ except (TypeError , ValueError , AttributeError ):
134+ return NotImplemented
You can’t perform that action at this time.
0 commit comments