Получить список первых ключей из словаря [key1, key2] с ключами кортежа - PullRequest
0 голосов
/ 03 сентября 2018

Как я могу получить список всех (уникальных) значений первых ключей из словаря двойных ключей?

Итерация значений ключей с последующим применением np.unique () - единственный способ?

key1=[]
for key in my_dictionary.keys():
    key1.append(key[0])

np.unique(key1)

Ответы [ 2 ]

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

Предположим, у вас есть словарь с ключами кортежей:

d = {('a', 'b'): 1, ('b', 'c'): 2, ('a', 'd'): 3, ('b', 'e'): 4}

Вы можете извлечь набор первых элементов из ваших ключей кортежа, используя set с map и operator.itemgetter:

from operator import itemgetter

res = set(map(itemgetter(0), d))  # {'a', 'b'}

Библиотека NumPy и numpy.unique рекомендуется использовать только с массивами NumPy или объектами Python, которые можно эффективно преобразовать в массивы NumPy, например, в список чисел.

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

Вы можете сделать это так:

key1 = set([key[0] for key in my_dictionary])

Как и @ Аран-Фей, вы также можете использовать понимание набора:

key1 = {key[0] for key in my_dictionary}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...