I documenti C # hanno una pagina sugli indicizzatori , che sembra usa "indicizzatore" per fare riferimento al costrutto richiesto per abilitare le istanze di una classe a cui accedere tramite notazione a parentesi quadre.
Indexers allow instances of a class or struct to be indexed just like arrays.
// Define the indexer to allow client code to use [] notation.
public T this[int i]
{
get { return arr[i]; }
set { arr[i] = value; }
}
D'altra parte, i documenti panda usano "indicizzatore" in diversi modi. Innanzitutto, gli attributi DataFrame
come ix
, loc
e iloc
esistenti per abilitare diversi tipi di operazioni di indicizzazione su DataFrame
le istanze sono chiamati indicizzatori stessi. Ad esempio, vedi la prima riga nei documenti per ix
:
A primarily label-location based indexer, with integer position fallback.
Eppure "indicizzatore" è anche usato altrove per riferirsi all'argomento passato tra parentesi quadre:
.iloc
is strictly integer position based (from 0 to length-1 of the axis), will raiseIndexError
if an indexer is requested and it is out-of-bounds, exceptslice
indexers which allow out-of-bounds indexing.
Entrambi questi usi si trovano anche nel codice sorgente , quindi è coerente.
La pagina di Wikipedia per gli indicizzatori non aiuta a distinguere tra tutti gli esempi sopra, sebbene la pagina in generale sembra distorto all'uso dei documenti C #.
In object-oriented programming, an indexer allows instances of a particular class or struct to be indexed just like arrays.
Che cos'è un indicizzatore? Tutti questi usi sono corretti? Cosa mi manca?