numbers module
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 5.1k
- Forks
- 2.1k
- Merge moyen
- 1 j 19 h
- PR mergées (30 j)
- 82
Description
The signature of Rational.__truediv__ is marked as the following:
First of, _ComplexLike sounds like it should be numbers.Complex. But second, the signature should be more refined :
- the divisor cannot be just any value, it has to be a number, so at a minimum
numbers.Complexinstead of Unknown. The typing signature should be(self, Complex) -> Complex. - when passing a Real as a divisor, the result cannot have an imaginary part and must be Real too. I'd go as far as saying that a Rational divisor would yield a Rational dividend. In any case, a
(self, Real) -> Realoverload should be defined. And as a bonus, a(self, Rational) -> Rationalone too.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le module numbers de typeshed et examinez la déclaration de Rational.truediv. Comparez ses annotations actuelles _ComplexLike et Unknown avec les surcharges demandées pour Complex, Real et Rational. Le travail est terminé lorsque le stub exprime les relations demandées entre le diviseur et le résultat et passe la validation pertinente de typeshed.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- tooling
- Type d'issue
- Bug
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100