Tôi đang cố gắng để truy cập vào các yếu tố của một dict_key bởi chỉ số của nó:Truy cập yếu tố dict_keys bởi chỉ mục trong Python3
test = {'foo': 'bar', 'hello': 'world'}
keys = test.keys() # dict_keys object
keys.index(0)
AttributeError: 'dict_keys' object has no attribute 'index'
Tôi muốn nhận foo
.
cùng với:
keys[0]
TypeError: 'dict_keys' object does not support indexing
Làm thế nào tôi có thể làm điều này?
Trong py3.x 'dict.keys()' trả về một tập hợp như đối tượng xem, không phải danh sách (vì vậy, không thể lập chỉ mục). Sử dụng 'keys = list (test)' –
khi tôi làm danh sách (something_dict), thứ tự tuple là ngẫu nhiên: ví dụ: list ({'foo': 'bar', 'hello': 'world'}) có thể trả về : danh sách (foo, hello) hoặc danh sách (hello, foo), tại sao điều này là ngẫu nhiên? – fj123x
[Dicts không có bất kỳ thứ tự nào] (http://stackoverflow.com/questions/526125/why-is-python-ordering-my-dictionary-like-so). (Sử dụng 'collections.OrderedDict' nếu bạn muốn các phím được đặt hàng) –