Issue #27539: Merge from 3.5.

This commit is contained in:
Mark Dickinson 2016-08-22 10:56:06 +01:00
commit 0add84b9b8
4 changed files with 22 additions and 1 deletions

View file

@ -460,10 +460,14 @@ class Fraction(numbers.Rational):
return Fraction(a._numerator ** power,
a._denominator ** power,
_normalize=False)
else:
elif a._numerator >= 0:
return Fraction(a._denominator ** -power,
a._numerator ** -power,
_normalize=False)
else:
return Fraction((-a._denominator) ** -power,
(-a._numerator) ** -power,
_normalize=False)
else:
# A fractional power will generally produce an
# irrational number.