Python3 Понимание назначения списка (мелкая / глубокая копия или ссылка) - PullRequest
0 голосов
/ 21 января 2020

Я хотел бы знать, в чем разница между последними двумя назначениями списка ниже

List1 = [0x1,0x2,0x3,0x4]
print('{}, 0x{:X}'.format(List1, id(List1)))
List1 = List1[1:]
print('{}, 0x{:X}'.format(List1, id(List1)))
List1[:] = List1[1:]
print('{}, 0x{:X}'.format(List1, id(List1)))

Распечатка, когда я выполняю это:

[1, 2, 3, 4], 0x2DBA09E8C88
[2, 3, 4], 0x2DBA1342B48
[3, 4], 0x2DBA1342B48

После того, как я создал list.

Я делаю то, что считаю мелкой копией.

Но что делает последнее задание? Он сохраняет свой адрес, поэтому новый объект не создается.

Кажется, я не могу найти объяснения по этому поводу в net, что мне искать

С уважением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...