Доступ к компоненту списка - PullRequest
0 голосов
/ 05 сентября 2018

Я хотел бы знать, как получить доступ к элементу из списка. У меня есть переменная с именем rows, и в ней у меня есть возвращение:

rows=[('x','y')]

Мне нужно получить доступ к значению y, как мне это сделать? Я использовал rows[1], и он возвращает ошибку:

list index out of range

Ответы [ 4 ]

0 голосов
/ 05 сентября 2018
rows  = [('x','y')]

Это означает, что у вас есть список с одним элементом и кортежем в качестве его элемента.

Ваш список содержит один элемент: ('x', 'y') с индексом 0. Ваш кортеж содержит два элемента: «x» с индексом 0 и «y» с индексом 1.

Иметь Y:

rows[0][1]:

           rows     [0]            [1]

                     ^              ^
                     |              |

                List Index       Tuple Index
0 голосов
/ 05 сентября 2018

list_values ​​= [( "X", "Y")] * * +1001

для i в значениях списка: Печать (я [1])

0 голосов
/ 05 сентября 2018

Список обычно содержит количество элементов, к которым обращается только один индекс. Например, список list = [1,2,3,4] имеет 4 элемента, к которым вы можете получить доступ с помощью list[0], что дает 0 или list[2], что приводит к 3 или list[-1], что приводит к 4. Обратите внимание, что вы можете использовать отрицательный индекс.

Теперь, если вам нужно более одного измерения, вы хотите построить матрицу. Матрица - это в основном список списка.

Существует несколько способов построения матрицы. Мой предпочтительный способ - matrix1 = [[0.0 for x in range(0, lenght)] for y in range(0, lenght)], но также matrix2 = [[1,2,3],[3,4,5]] может работать.

Если вы хотите получить доступ к матрице, вы можете сделать это с помощью matrix2[0][1], что даст 2. Обратите внимание, что первый индекс обращается к первому списку, а второй - к списку в первом списке.

Теперь, по-видимому, вы хотите использовать список для хранения кортежей. В этом случае у вас есть кортежи tuple = (value1, value2), хранящиеся в списке. Например, list = [(1,2),(3,4),(5,6)] содержит три кортежа. Вы можете получить доступ к кортежу как к списку, так что вы можете получить доступ к значению 2 с помощью list[0][1].

Подводя итог, список и кортежи доступны с помощью скобок []. Отрицательные значения приемлемы. Вы можете хранить кортежи в списках или списки в списках. Если вы это сделаете, вы должны использовать несколько скобок [].

0 голосов
/ 05 сентября 2018

Это список , который содержит один кортеж . Вам необходимо получить первый элемент списка ([0]), а затем второй элемент этого элемента ([1]). Так

xy_pair = my_list[0]
y = xy_pair[1]

Обратите внимание, что python также поддерживает распаковку , что позволит вам написать

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