Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[cppyy] Conversion of signed char pointer / vector into int8 numpy array

Aperta
#21,434 2 commenti 0 reazioni 1 assegnatario Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@siliataider ci sta già lavorando.

Dal 1/3/2026.

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

bug in:Python Interface
Check duplicate issues.
  • Checked for duplicates
Description

For common data types, e.g. int, double, we can convert a pointer / vector to numpy array with a direct construction:

import numpy as np
import cppyy
import cppyy.ll

vec = cppyy.gbl.std.vector([-1, 0, 1])
# works
arr = np.array(vec)
# also works
arr = np.array(vec.data())
Reproducer

However for int8 (or signed char in C++), the conversion only works for a pointer, but not for a vector:

import numpy as np
import cppyy
import cppyy.ll

arr = np.array([-1, 0, 1], dtype=np.int8)
view = cppyy.ll.cast[f"signed char*"](arr.ctypes.data)
view.reshape((3,))
vec = cppyy.gbl.std.vector['signed char'](view)
# does not work (OverflowError: character argument not in range(0x110000))
arr = np.array(vec)
# works
arr = np.array(vec.data())
ROOT version

cppyy==3.5.0

Installation method

conda (bundled with root)

Operating system

Linux

Additional context

No response

Lingua principale
C++
Stelle
3.3k
Fork
1.6k
Merge medio
2g 16h
PR unite (30g)
194

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di root-project/root

Tutte le issue di root-project/root

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.