Преобразование из одного типа данных в другой — обычная операция в Python, учитывая тот факт, что Python имеет много типов данных, и каждый из них имеет свое назначение.
Способ 1: преобразование ключей словаря в список с dict.keys()
Чтобы преобразовать и получить ключи словаря в виде списка в Python, используйте метод dict.keys(). dict.keys() — это встроенный метод Python, который возвращает список, состоящий из ключей словаря.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
dict = { 1: "Ahsoka", 2: "Andor", 3: "Bad Batch", 4: "Rogue Squadron", 5: "Lando", 6: "The rangers of new republic", 7: "The Acolyte" } keys = dict.keys() print(keys) print(type(keys)) |
Вывод:
|
1 2 3 |
dict_keys([1, 2, 3, 4, 5, 6, 7]) <class 'dict_keys'> [1, 2, 3, 4, 5, 6, 7] |
В этом примере мы определили словарь, состоящий из семи элементов в паре ключ-значение. Чтобы получить ключи словаря в виде списка, мы использовали метод dict.keys(). Затем мы напечатали ключи и их тип данных. Теперь вы можете привести тип к dict_keys, используя метод list().
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
dict = { 1: "Ahsoka", 2: "Andor", 3: "Bad Batch", 4: "Rogue Squadron", 5: "Lando", 6: "The rangers of new republic", 7: "The Acolyte" } keys = dict.keys() print(keys) print(type(keys)) list = list(keys) print(list) |
Вывод:
|
1 |
[1, 2, 3, 4, 5, 6, 7] |
Этот подход является лучшим подходом для получения списка ключей dict.
Способ 2: наивный подход к получению списка ключей
В этом подходе мы будем использовать цикл for и метод list.append(), чтобы получить ключ один за другим, а затем добавить ключ в список и вернуть его. Это почти невозможно, но позвольте мне показать вам, как это сделать.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
dict = { 1: "Ahsoka", 2: "Andor", 3: "Bad Batch", 4: "Rogue Squadron", 5: "Lando", 6: "The rangers of new republic", 7: "The Acolyte" } list = [] for key in dict.keys(): list.append(key) print(list) |
Вывод:
|
1 |
[1, 2, 3, 4, 5, 6, 7] |
В этом примере мы определили словарь и пустой список. Затем использовал цикл for, чтобы получить ключ один за другим и добавить его в метод list.append(). В конце концов, мы распечатали список.
Способ 3: распаковка с помощью *
Распаковка с помощью * работает с любым итерируемым объектом. Поскольку словари возвращают свои ключи при повторении, вы можете легко создать список, используя его в литерале списка.
|
1 2 3 4 5 6 7 8 9 10 11 12 |
dict = { 1: "Ahsoka", 2: "Andor", 3: "Bad Batch", 4: "Rogue Squadron", 5: "Lando", 6: "The rangers of new republic", 7: "The Acolyte" } keys = [*dict] print(keys) |
Вывод:
|
1 |
[1, 2, 3, 4, 5, 6, 7] |
Способ 4: использование itemgetter для получения списка ключей
itemgetter из модуля оператора возвращает вызываемый объект, который извлекает элемент из своего операнда, используя метод операнда __getitem__(). Затем этот метод сопоставляется с dict.items(), и они преобразуются в список.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
from operator import itemgetter dict = { 1: "Ahsoka", 2: "Andor", 3: "Bad Batch", 4: "Rogue Squadron", 5: "Lando", 6: "The rangers of new republic", 7: "The Acolyte" } keys = list(map(itemgetter(0), dict.items())) print(keys) |
Вывод:
|
1 |
[1, 2, 3, 4, 5, 6, 7] |

