Нарезка вложенного списка.объяснение - PullRequest
0 голосов
/ 06 февраля 2019
x = [1,[2,[3,4],5],6]
print(x[1][1][1])

Не могли бы вы объяснить мне, почему результат 4.

Ответы [ 4 ]

0 голосов
/ 06 февраля 2019
x = [1,[2,[3,4],5],6]

на самом деле, как показано ниже, когда вы смотрите на него как на индекс:

InnerList-2 Index->       0 1
InnerList-1 Index->    0 1     2
OuterList Index->   0 1           2
x =                [1,[2,[3,4],5],6]

Итак, это означает:

x[1] ->    [2,[3,4],5]
x[1][1] -> [3,4]
x[1][1] -> 4
0 голосов
/ 06 февраля 2019

Поскольку индексы основаны на 0.

x = [1,[2,[3,4],5],6]

# The element placed on 1 of [1,[2,[3,4],5],6] i.e. [2, [3, 4], 5]
print(x[1])  

# The element placed on 1 of [2, [3, 4], 5] i.e.  [3, 4]
print(x[1][1]) 

# The element placed on 1 of [3, 4] i.e. 4
print(x[1][1][1]) 

ВЫХОД:

[2, [3, 4], 5]
[3, 4]
4
0 голосов
/ 06 февраля 2019
x = [1,[2,[3,4],5],6]

x[1] = [2,[3,4],5]

x[1][1] = [3,4]

x[1][1][1] = 4

Помните, что вы начинаете индексирование с 0. Итак x[0] = 1 и x[1] = the entire nested list

Также помните, что вложенный список обнаруживается как один объект.В этом случае x содержит 3 элемента: 1, [2,[3,4],5] и 6.Второй элемент теперь имеет индексную позицию 1, а также содержит 3 элемента: 2, [3,4] и 5.То же самое для вложенного цикла [3,4].

0 голосов
/ 06 февраля 2019

x = [1,[2,[3,4],5],6]

Что x[1][1][1] делает:

Принимает второй элемент:

[2,[3,4],5]

второй элемент из этого списка:

[3,4]

второй элемент

4

Так что это имеет смысл.

Это второе, а не первоеэлемент, потому что списки в Python нумеруются с 0.

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