Hướng dẫn python create dict with keys - python tạo dict bằng khóa

334

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi muốn nhận được từ điều này:

keys = [1,2,3]

với điều này:

{1: None, 2: None, 3: None}

Có cách làm gì không?

Đây là một cách xấu xí để làm điều đó:

>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}

Hướng dẫn python create dict with keys - python tạo dict bằng khóa

EVTOH

4343 Huy hiệu vàng8 Huy hiệu bạc21 Huy hiệu đồng3 gold badges8 silver badges21 bronze badges

hỏi ngày 11 tháng 2 năm 2010 lúc 2:43Feb 11, 2010 at 2:43

Juanjo contijuanjo contiJuanjo Conti

27.7K39 Huy hiệu vàng106 Huy hiệu bạc131 Huy hiệu Đồng39 gold badges106 silver badges131 bronze badges

1

{1: None, 2: None, 3: None}
5 Trực tiếp giải quyết vấn đề:

>>> dict.fromkeys([1, 2, 3, 4])
{1: None, 2: None, 3: None, 4: None}

Đây thực sự là một lớp học, vì vậy nó cũng hoạt động cho các lớp học (như

{1: None, 2: None, 3: None}
6).

Đối số thứ hai tùy chọn, mặc định là

{1: None, 2: None, 3: None}
7, chỉ định giá trị sẽ sử dụng cho các khóa. Lưu ý rằng cùng một đối tượng sẽ được sử dụng cho từng khóa, có thể gây ra các vấn đề với các giá trị có thể thay đổi:

>>> x = dict.fromkeys([1, 2, 3, 4], [])
>>> x[1].append('test')
>>> x
{1: ['test'], 2: ['test'], 3: ['test'], 4: ['test']}

Đã trả lời ngày 11 tháng 2 năm 2010 lúc 2:45Feb 11, 2010 at 2:45

Thomas Woutersthomas WoutersThomas Wouters

127K23 Huy hiệu vàng146 Huy hiệu bạc122 Huy hiệu Đồng23 gold badges146 silver badges122 bronze badges

2

Sử dụng sự hiểu biết của Dict:

>>> keys = [1,2,3,5,6,7]
>>> {key: None for key in keys}
{1: None, 2: None, 3: None, 5: None, 6: None, 7: None}

Biểu thức giá trị được đánh giá mỗi lần, vì vậy điều này có thể được sử dụng để tạo ra một dict với các danh sách riêng biệt (giả sử) là giá trị:

>>> x = {key: [] for key in [1, 2, 3, 4]}
>>> x[1] = 'test'
>>> x
{1: 'test', 2: [], 3: [], 4: []}

Đã trả lời ngày 11 tháng 2 năm 2010 lúc 11:18Feb 11, 2010 at 11:18

Adrien Plissonadrien PlissonAdrien Plisson

21.6K5 Huy hiệu vàng40 Huy hiệu bạc73 Huy hiệu đồng5 gold badges40 silver badges73 bronze badges

7

dict.fromkeys(keys, None)

Đã trả lời ngày 11 tháng 2 năm 2010 lúc 2:48Feb 11, 2010 at 2:48

Dominic Cooneydominic CooneyDominic Cooney

6.1381 Huy hiệu vàng25 Huy hiệu bạc38 Huy hiệu đồng1 gold badge25 silver badges38 bronze badges

4

Một danh sách hiểu có thể được sử dụng để xây dựng danh sách các cặp giá trị khóa, sau đó có thể được chuyển cho hàm tạo

{1: None, 2: None, 3: None}
8. Do đó:

>>> keys = {"a", "b", "c", "d"}
>>> d = dict([(key, []) for key in keys])
>>> d
{'d': [], 'c': [], 'a': [], 'b': []}

Biểu thức giá trị được đánh giá mỗi lần, tạo danh sách riêng biệt trong ví dụ trên:

>>> d['a'].append('test')
>>> d
{'d': [], 'c': [], 'a': ['test'], 'b': []}

Đã trả lời ngày 24 tháng 8 năm 2015 lúc 12:31Aug 24, 2015 at 12:31

3

Chỉ đơn giản là lặp lại và thêm các giá trị vào một từ điển trống:

{1: None, 2: None, 3: None}
0

Đã trả lời ngày 11 tháng 2 năm 2010 lúc 4:59Feb 11, 2010 at 4:59

inspectorG4dgetinspectorG4dgetinspectorG4dget

106K25 Huy hiệu vàng138 Huy hiệu bạc236 Huy hiệu Đồng25 gold badges138 silver badges236 bronze badges

0

Trong nhiều quy trình công việc mà bạn muốn đính kèm giá trị mặc định / ban đầu cho các khóa tùy ý, bạn không cần băm từng khóa trước thời hạn. Bạn có thể sử dụng

{1: None, 2: None, 3: None}
6. Ví dụ:

{1: None, 2: None, 3: None}
1

Điều này hiệu quả hơn, nó tiết kiệm cho việc băm tất cả các khóa của bạn khi tức thời. Hơn nữa,

>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}
0 là một lớp con của
{1: None, 2: None, 3: None}
8, vì vậy thường không cần phải chuyển đổi trở lại từ điển thông thường.

Đối với các quy trình công việc mà bạn yêu cầu điều khiển trên các khóa cho phép, bạn có thể sử dụng

{1: None, 2: None, 3: None}
5 theo câu trả lời được chấp nhận:

{1: None, 2: None, 3: None}
2

Đã trả lời ngày 17 tháng 12 năm 2018 lúc 11:47Dec 17, 2018 at 11:47

Hướng dẫn python create dict with keys - python tạo dict bằng khóa

JPPJPPjpp

152K32 Huy hiệu vàng259 Huy hiệu bạc319 Huy hiệu đồng32 gold badges259 silver badges319 bronze badges

Chỉ vì thật vui khi hàm tạo

{1: None, 2: None, 3: None}
8 hoạt động độc đáo với
>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}
4, bạn có thể
>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}
5 giá trị mặc định và
>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}
4 nó cho các khóa:

{1: None, 2: None, 3: None}
3

Sẽ cho:

{1: None, 2: None, 3: None}

>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}
5 tạo ra một trình lặp vô hạn của phần tử được truyền cho nó nhưng khi
>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}
4 dừng lại trên một thời gian ngắn nhất có thể hoạt động tốt.

Đã trả lời ngày 9 tháng 3 lúc 8:45Mar 9 at 8:45

TomerikootomerikooTomerikoo

16.7K15 Huy hiệu vàng38 Huy hiệu bạc54 Huy hiệu đồng15 gold badges38 silver badges54 bronze badges

Làm cách nào để tạo một từ điển chỉ sử dụng các khóa?

Hãy xem các phương pháp khác nhau mà chúng ta có thể thực hiện nhiệm vụ này ...
Phương pháp số 1: Bằng cách lặp qua danh sách ..
Phương pháp số 2: Sử dụng từ điển hiểu ..
Phương pháp số 3: Sử dụng hàm zip () ..
Phương pháp số 4: Sử dụng phương thức từKeys () ..

Bạn có thể thêm chìa khóa vào một python từ điển không?

Trong Python, chúng ta có thể thêm nhiều cặp giá trị khóa vào từ điển hiện có. Điều này đạt được bằng cách sử dụng phương thức Update ().Phương pháp này có một đối số về loại dict hoặc bất kỳ điều gì có thể có độ dài hai - như ((key1, value1),) và cập nhật từ điển với các cặp giá trị khóa mới.we can add multiple key-value pairs to an existing dictionary. This is achieved by using the update() method. This method takes an argument of type dict or any iterable that has the length of two - like ((key1, value1),) , and updates the dictionary with new key-value pairs.

Làm thế nào để bạn tạo một từ điển trong Python?

Tạo từ điển Python Tạo một từ điển cũng đơn giản như việc đặt các mục bên trong niềng răng xoăn {} được phân tách bằng dấu phẩy.Một mục có khóa và giá trị tương ứng được biểu thị dưới dạng cặp (khóa: giá trị).placing items inside curly braces {} separated by commas. An item has a key and a corresponding value that is expressed as a pair (key: value).

Chúng ta có thể tạo một từ điển với các khóa lặp đi lặp lại không?

Đầu tiên, một khóa nhất định chỉ có thể xuất hiện trong một từ điển một lần.Các khóa trùng lặp không được phép.Một từ điển ánh xạ từng khóa theo giá trị tương ứng, do đó, không có ý nghĩa gì khi ánh xạ một khóa cụ thể hơn một lần.Duplicate keys are not allowed. A dictionary maps each key to a corresponding value, so it doesn't make sense to map a particular key more than once.