2015-09-06 4 views
5

У меня возникли очень серьезные сомнения. Рассмотрим следующий пример:Python: Добавить список в тот же список

Случай 1:

a=[1,2,3] 
b=[4,5,6] 
a.append(b) #print a will give [1,2,3,4,5,6] 

Случай 2:

a=[1,2,3] 
a.append(a) # print a gives [1,2,3,...] 

Я понимаю .append в питона присоединяет значений переменная до конца переменной, к которой она добавлена. Однако я не понимаю поведение «...» в футляре 2.

+1

Посмотрите на 'a [3]' или 'a [2: 4]' для изучения. – askewchan

+0

a [3] дает мне то же значение, что и список a. Я смотрю рекурсию? – SeasonalShot

+2

Да, @SeasonalShot :) Также попробуйте 'a [0] = 9', затем' print a' и 'print a [3]'. – askewchan

ответ

5

Точки указывают, что список содержит ссылку на себя. Он просто избегает бесконечной рекурсии во время печати.

Смежные вопросы