Indexing tuple with `slice` object results in wrong type
Offen
Dieses Issue hat noch niemand übernommen.
bug
priority-1-normal
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Example:
x = (1, 2, 3)
y = x[1:3]
z = x[slice(1, 3)]
reveal_locals()
Output from mypy:
note: Revealed local types are:
note: x: Tuple[builtins.int, builtins.int, builtins.int]
note: y: Tuple[builtins.int, builtins.int]
note: z: builtins.int
I believe z should also have type Tuple[builtins.int, builtins.int], or at a minimum Tuple[builtins.int, ...].
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Führe zunächst das bereitgestellte Beispiel zur Tuple-Indizierung mit mypy aus und vergleiche die inferierten Typen für die Slice-Syntax und ein explizites Slice-Objekt. Verfolge anschließend den Typprüfpfad für die Tuple-Indizierung und füge eine Abdeckung hinzu, die zeigt, dass z als Tuple inferiert wird, und bestätige, dass der aufgedeckte Typ mit dem beabsichtigten Ergebnis übereinstimmt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 48/100