Могу ли я создать «представление» в списке Python?
У меня большой списокl
, Я хочу создать представление от элемента 4 до 6. Я могу сделать это с секвенсором.
>>> l=range(10)
>>> lv=l[3:6]
>>> lv
[3, 4, 5]
Однако lv является копией фрагмента l. Если я изменяю базовый список, lv не отражает изменения.
>>> l[4] = -1
>>> lv
[3, 4, 5]
И наоборот, я хочу, чтобы модификация на lv отражалась и на l. Кроме этого размер списка не будет изменен.
Я не с нетерпением жду, чтобы построить большой класс, чтобы сделать это. Я просто надеюсь, что другие гуру Python могут знать некоторые скрытые языковые трюки. В идеале я надеюсь, что это может понравиться арифметике указателей в C.
int lv[] = l + 3;