Kann ich eine "Ansicht" auf einer Python-Liste erstellen?
Ich habe eine große Listel
. Ich möchte eine Ansicht von Element 4 bis 6 erstellen. Ich kann dies mit einem Sequenz-Slice tun.
>>> l=range(10)
>>> lv=l[3:6]
>>> lv
[3, 4, 5]
Aber lv ist eine Kopie einer Scheibe von l. Wenn ich die zugrunde liegende Liste ändere, spiegelt lv die Änderung nicht wider.
>>> l[4] = -1
>>> lv
[3, 4, 5]
Vice versa Ich möchte Änderungen an lv auch in l widerspiegeln. Ansonsten wird die Listengröße nicht geändert.
Ich freue mich nicht darauf, eine große Klasse dafür aufzubauen. Ich hoffe nur, dass andere Python-Gurus einen versteckten Sprachtrick kennen. Idealerweise hoffe ich, dass es Zeigerarithmetik in C mögen kann.
int lv[] = l + 3;