Trong bài viết này, chúng tôi sẽ thảo luận về các cách khác nhau để lấy giá trị đầu tiên của từ điển. Sau đó, chúng ta sẽ xem xét cách chọn các giá trị n đầu tiên của từ điển trong Python. Mục lục: Trong Python, từ điển là một loại container lưu trữ các vật phẩm trong các cặp giá trị khóa. Nó cũng cung cấp một giá trị hàm () trả về một chuỗi có thể lặp lại của tất cả các giá trị trong từ điển. Chúng tôi sẽ sử dụng điều đó để tìm nạp tất cả các giá trị trong từ điển và sau đó chúng tôi sẽ chọn giá trị đầu tiên từ chuỗi đó, tức là Output: Ở đây chúng tôi đã chuyển đổi chuỗi giá trị có thể lặp lại thành một danh sách và sau đó chọn phần tử đầu tiên từ danh sách, tức là giá trị đầu tiên của từ điển. Quảng cáo Các khóa học miễn phí tốt nhất để học Python Python là một trong những ngôn ngữ lập trình được sử dụng nhiều nhất vào năm 2021.2021. Nhận giá trị đầu tiên trong từ điển python bằng phương thức giá trị ()
Học hỏi từ những điều tốt nhất ngày hôm nay.
Mục () Chức năng của từ điển trả về một chế độ xem tất cả các từ điển dưới dạng một chuỗi của tất cả các cặp giá trị khóa. Từ chuỗi này, chọn cặp giá trị khóa đầu tiên và từ đó chọn giá trị đầu tiên.
# Dictionary of string and int word_freq = { 'Hello' : 56, "at" : 23, 'test' : 43, 'This' : 78, 'Why' : 11 } # Get first value of dictionary first_value = list(word_freq.items())[0][1] print('First Value: ', first_value)Output:
First Value: 56Công cụ liên quan::
- Đã giải quyết- typeerror: Đối tượng Dict_Keys không hỗ trợ lập chỉ mục
- Làm thế nào để có được chìa khóa đầu tiên trong từ điển - Python
- Nhận cặp giá trị khóa đầu tiên từ một từ điển Python
Nhận giá trị đầu tiên trong một từ điển bằng iter () & next ()
Trong giải pháp trên, chúng tôi đã tạo một danh sách tất cả các giá trị và sau đó chọn khóa đầu tiên. Đó không phải là một giải pháp hiệu quả, bởi vì nếu từ điển của chúng tôi lớn và chúng tôi chỉ cần chìa khóa đầu tiên, thì tại sao chúng tôi tạo ra một danh sách lớn tất cả các khóa. Khi các mục () trả về một chuỗi các khóa từ điển có thể lặp lại, vì vậy chúng ta có thể tạo một đối tượng iterator của chuỗi có thể lặp lại của các cặp giá trị khóa sử dụng hàm iter (). Sau đó, bằng cách gọi hàm tiếp theo () trên đối tượng Iterator, chúng ta có thể nhận phần tử đầu tiên của chuỗi này, tức là cặp giá trị khóa đầu tiên của từ điển. Sau đó chọn giá trị từ cặp đầu tiên. Ví dụ,
# Dictionary of string and int word_freq = { 'Hello' : 56, "at" : 23, 'test' : 43, 'This' : 78, 'Why' : 11 } # Get first value of dictionary first_value = next(iter(word_freq.items()))[1] print('First Value: ', first_value)Output:
First Value: 56Đây là một giải pháp hiệu quả bởi vì didn đã lặp lại trên tất cả các khóa trong từ điển, chúng tôi chỉ chọn cái đầu tiên.
Nhận giá trị n đầu tiên từ từ điển Python
Tìm nạp tất cả các giá trị của từ điển làm danh sách và sau đó chọn đầu tiên n mục từ nó. Ví dụ,
# Dictionary of string and int word_freq = { 'Hello' : 56, "at" : 23, 'test' : 43, 'This' : 78, 'Why' : 11 } n = 3 # Get first 3 values of dictionary first_n_values = list(word_freq.values())[:n] print('First 3 Values:') print(first_n_values)Output:
First 3 Values: [56, 23, 43]Chúng tôi đã chọn ba giá trị đầu tiên từ từ điển.
Conclusion:
Chúng tôi đã tìm hiểu về các cách khác nhau để chọn giá trị đầu tiên từ một từ điển trong Python. Sau đó, chúng tôi cũng đã xem xét quy trình để chọn các giá trị N đầu tiên từ một từ điển trong Python.
Cập nhật: Kể từ Python 3.7, thứ tự chèn được duy trì, vì vậy bạn không cần First Value: 562 ở đây. Bạn có thể sử dụng các phương pháp dưới đây với First Value: 563 bình thường
Thay đổi trong phiên bản 3.7: Thứ tự từ điển được đảm bảo là thứ tự chèn. Hành vi này là một chi tiết thực hiện của CPython từ 3.6.
nguồn
Python 3.6 và sớm hơn*
Nếu bạn đang nói về một First Value: 563 thông thường, thì "phím đầu tiên" không có ý nghĩa gì. Các khóa không được đặt hàng theo bất kỳ cách nào bạn có thể phụ thuộc vào. Nếu bạn lặp lại trên First Value: 563 của bạn, bạn có thể sẽ không nhận được First Value: 566 là điều đầu tiên bạn thấy.
Nếu bạn cần giữ mọi thứ theo thứ tự, thì bạn phải sử dụng First Value: 562 và không chỉ là một từ điển đơn giản.
import collections prices = collections.OrderedDict([ ("banana", 4), ("apple", 2), ("orange", 1.5), ("pear", 3), ])Nếu sau đó bạn muốn xem tất cả các phím theo thứ tự bạn có thể làm như vậy bằng cách lặp qua nóin order you could do so by iterating through it
for k in prices: print(k)Bạn có thể, thay vào đó đặt tất cả các khóa vào một danh sách và sau đó làm việc với điều đó
First Value: 560Một cách nhanh hơn để có được phần tử đầu tiên mà không tạo danh sách sẽ là gọi First Value: 568 trên trình lặp. Điều này không khái quát một cách độc đáo khi cố gắng lấy phần tử First Value: 569 mặc dùfirst element without creating a list would be to call First Value: 568 on the iterator. This doesn't generalize nicely when trying to get the First Value: 569 element though
First Value: 561* CPython đã có thứ tự chèn đảm bảo như một chi tiết triển khai trong 3.6.