[Python-checkins] Remove unnecessary test for `xc == 1` in _pydecimal (GH-27102)
ambv
webhook-mailer at python.org
Thu Jul 15 06:48:59 EDT 2021
https://github.com/python/cpython/commit/3527569f1cd0df697242b68a8a837f08904872fe
commit: 3527569f1cd0df697242b68a8a837f08904872fe
branch: main
author: Elisha Hollander <just4now666666 at gmail.com>
committer: ambv <lukasz at langa.pl>
date: 2021-07-15T12:48:46+02:00
summary:
Remove unnecessary test for `xc == 1` in _pydecimal (GH-27102)
- if `xc == 1` then the function returns on line 2140;
- other assignments to `xc` are inside the `y.sign == 1` condition block which always returns early
files:
M Lib/_pydecimal.py
diff --git a/Lib/_pydecimal.py b/Lib/_pydecimal.py
index 3d6cece9676c9..f6d9ddf42e473 100644
--- a/Lib/_pydecimal.py
+++ b/Lib/_pydecimal.py
@@ -2230,7 +2230,7 @@ def _power_exact(self, other, p):
if xe != 0 and len(str(abs(yc*xe))) <= -ye:
return None
xc_bits = _nbits(xc)
- if xc != 1 and len(str(abs(yc)*xc_bits)) <= -ye:
+ if len(str(abs(yc)*xc_bits)) <= -ye:
return None
m, n = yc, 10**(-ye)
while m % 2 == n % 2 == 0:
@@ -2243,7 +2243,7 @@ def _power_exact(self, other, p):
# compute nth root of xc*10**xe
if n > 1:
# if 1 < xc < 2**n then xc isn't an nth power
- if xc != 1 and xc_bits <= n:
+ if xc_bits <= n:
return None
xe, rem = divmod(xe, n)
More information about the Python-checkins
mailing list