В чем разница между ключом / значением списков и ключом / значением Dict? - PullRequest
0 голосов
/ 19 июня 2020

Я просто не мог найти подходящих ответов.

Рассмотрим - [A:B] и {A:B}. Думаю, соединение [A:B] не действует для Python. Не могли бы вы помочь мне разобраться?

Ответы [ 2 ]

2 голосов
/ 19 июня 2020

В Python пара ключ-значение существует только в словаре . Вы можете вставлять только независимые элементы в списки, которые можно индексировать целыми числами. У вас не может быть пары "ключ-значение" в списке.

Я думаю, [A:B] пара не действует для Python. Не могли бы вы помочь мне разобраться?

Да, отчасти верно! В списке не может быть пары "ключ-значение". Они будут существовать только в словаре. {A:B} является правильным, где A - ключ, а B - значение, к которому можно получить доступ, используя dict_name['A'].

Однако lst[A:B] можно рассматривать как операцию нарезки, где lst - это любой список. Операция среза выполняется для списков с использованием двоеточия (:). Здесь он вернет вам элементы с индекса A до B. Синтаксис - list_name[start : stop : steps]. Например -

lst = [1, 2, 3, 5, 10]

print(lst[0:3])  # prints elements from index 0 to 3-1
>>> [1, 2, 3]

print(lst[:])    # prints all the elements in the list 
>>> [1, 2, 3, 5, 10]

print(lst[::-1]) # prints all the elements in the list in reverse order
>>> [10, 5, 3, 2, 1]

print(lst[0::2]) # prints elements from index 0 with a step of 2
>>> [1, 3, 10]

Лучшее, что вы можете сделать, это имитировать пару ключ-значение словаря в список, вставив пару кортежей, или вы можете сохранить пары ключ-значение различных структур данных словаря как элементы в список.

lst = [{1:3,4:12},{2:3,5:6,8:9}]

print( lst[1][2]) # prints element with key 2 of dictionary at index 1
>>> 3

print(lst[0][4])  # prints element with key 4 of dictionary at index 0
>>> 12

В приведенном выше списке в качестве элементов хранятся два словаря. Вы можете проиндексировать словарь, и они будут использовать его для поиска любой пары ключ-значение, которую вы хотите.


Короче говоря, используйте Dictionary всякий раз, когда вам нужно сохранить неупорядоченный ассоциативный data ( ключ - значение пара) (Порядок вставки - Python 3.6+. Подробнее - здесь ). Используйте списки всякий раз, когда вы хотите сохранить заказанную коллекцию элементов .

Надеюсь, вы понимаете разницу!

1 голос
/ 19 июня 2020

В Python пара ключ / значение (также известная как Словарь) записывается следующим образом:

>>> d = {'name':'John', 'age':21}
>>> d['name']
'John'
>>> d['age']
21

[A: B] используется для доступа к списку / массиву, как показано в примере. ниже:

>>> a = ['a', 'b', 'c', 'd', 'e']

>>> a[:]     ## All items in the list
['a', 'b', 'c', 'd', 'e']

>>> a[2:]    ## All items beginning from index 2
['c', 'd', 'e']

>>> a[:4]    ## All items from index 0 to 3 (or 4-1) 
['a', 'b', 'c', 'd']

>>> a[2:4]   ## All items from index 2 to 3 (or 4-1)
['c', 'd']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...