measure() and if_test() reject NumPy integers
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 78/100
Rechercherichtung
Beginne in python/qsengine/__init__.py und untersuche die Prüfungen auf Ganzzahlen in measure() und if_test(); vergleiche sie mit den Gate-Methoden, die NumPy-Ganzzahlen bereits akzeptieren. Führe die relevanten Tests aus und ergänze dann Testabdeckung für NumPy-Ganzzahlen und Sequenzen, die keine Ganzzahlen enthalten. Die Aufgabe ist abgeschlossen, wenn beide Methoden ganzzahlige Werte akzeptieren und Sequenzen weiterhin korrekt verarbeiten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Code that shows the problem
q = np.arange(3)[0] # numpy.int64
qc.measure(q, 0) # TypeError: 'numpy.int64' object is not iterable
with qc.if_test(np.int64(1), 1): ... # same error
What you expected, and what happened instead
Gate methods accept NumPy integers, but these two don't, because they check
isinstance(x, int), which is False for numpy.int64 (python/qsengine/__init__.py).
Use operator.index(x) (or check for numbers.Integral) to accept anything integer-like, and
treat everything else as a sequence.
qsengine version
1.1.0
Operating system, Python version and GPU
Windows 10, Python 3.14.7
Backend
None
- Vorherrschende Sprache
- Rust
- Sterne
- 1
- Forks
- 0
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus kaiwave/qsengine
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 54/100
Alle Issues in kaiwave/qsengine
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
cloudflare/workers-rs#1130 ·
Maintainer antworten meist innerhalb von 11 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 69/100
vfarcic/dot-agent-deck#2160 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
RustCrypto/utils#1597 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag