У меня есть вложенный список с именем basic
и я хочу изменить одну из его записей. Я предположил, что следующее поведение:неожиданное поведение вложенных списков в python
expected = [ [9],[0] ]
unexpected = [ [9],[9] ]
basic = [ [0],[0] ]
basic[0][0] = 9
print(basic == expected) # this is true
Однако небольшая модификация дает удивительный результат:
Если список определен второй путь, присваивание устанавливает весь столбец 9.
Это поведение по дизайну? Если да, то почему? Я не могу найти ничего в документах об этом.
Я рекомендую читать http://nedbatchelder.com/text/names.html – jonrsharpe
+1 @jonrsharpe Я искал для этой ссылки! –