2009-08-18 40 views

Trả lời

6

Đối với một danh sách của các bộ:

my_dict.items() 

Nếu tất cả các bạn đang làm là lặp qua các mục, tuy nhiên , thường thích hợp hơn khi sử dụng dict.iteritems(), bộ nhớ này hiệu quả hơn vì nó chỉ trả về một mục tại một thời điểm, thay vì tất cả các mục cùng một lúc:

for key,value in my_dict.iteritems(): 
    #do stuff 
+0

vòng lặp for có thể được sử dụng để làm cho một danh sách hiểu hoặc một máy phát điện. – geowa4

5

Trong Python 2.*, thedict.items(), như trong câu trả lời của @ Andrew. Trong Python 3.*, list(thedict.items()) (vì có items chỉ là chế độ xem có thể lặp lại, không phải danh sách, bạn cần gọi list trên danh sách rõ ràng nếu bạn cần chính xác danh sách).

+0

Meh, tôi không chắc chắn tôi thích điều đó ... cảm ơn cho tip, mặc dù. –

+0

@Andrew - về cơ bản, trong Python 3+, hành vi của dict.items(), sẽ thay đổi để phù hợp với hành vi của dict.iteritems(), như tôi đã mô tả chúng trong bài đăng của tôi. – Triptych

+0

@Triptych Tôi chỉ càu nhàu rằng họ đã chọn làm cho trình vòng lặp là chế độ xem mặc định. –

-2

Đối với Python> 2.5:

a = {'1' : 10, '2' : 20 } 
list(a.itervalues()) 
+2

đó là một danh sách phẳng các giá trị , không phải danh sách (chìa khóa, giá trị) tuples áp phích đã được yêu cầu – Anentropic

3

Chuyển đổi dict-list được thực hiện dễ dàng bằng Python. Ba ví dụ:

d = {'a': 'Arthur', 'b': 'Belling'} 

d.items() [('a', 'Arthur'), ('b', 'Belling')] 

d.keys() ['a', 'b'] 

d.values() ['Arthur', 'Belling'] 

như đã thấy trong câu trả lời trước, Converting Python Dictionary to List.

Các vấn đề liên quan