Найти - Пользователи
Полная версия: Копия вложенного списка
Начало » Python для новичков » Копия вложенного списка
1
vm
пример 1. работает как надо:
p = [1,2]
q = p[:] #q присваиваем копию p
q[0] = 9 #изменяем 1й элемент q
print p
print q
в этом примере q изменяется, p, как и положено, не изменяется

пример 2. работает не так как надо:
p = [[1], [2]]
q = p[:]    #q присваиваем копию p
q[0][0] = 9 #изменяем 1й элемент q
print p
print q
здесь почему-то p тоже изменяется
почему во втором примере p меняется и как сделать чтобы p не изменялся?
JOHN_16
вам нужен deepcopy()
FishHook
vm
почему во втором примере p меняется
Очень полезная ссылка
vm
FishHook, как раз там проверял и не понимал почему так работает. прочитал про отличия обычного среза и deepcopy(), теперь стало ясно
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB