HomeLập trìnhPythonHiểu từ điển...

Hiểu từ điển trong Python – Giải thích về cách hiểu từ điển


Bạn có thể sử dụng Từ điển trong Python để lưu trữ dữ liệu theo cặp khóa và giá trị.

Và bạn có thể sử dụng khả năng hiểu từ điển để tạo một từ điển mới từ một từ điển đã tồn tại.

Khi tạo một từ điển mới bằng tính năng hiểu từ điển, bạn có thể thực hiện nhiều thao tác khác nhau bằng cách sử dụng các biểu thức để xác định dữ liệu (khóa và/hoặc giá trị) sẽ được lưu trữ trong từ điển mới.

Trong bài viết này, bạn sẽ học cách tạo từ điển bằng Python bằng cách sử dụng khả năng hiểu từ điển. Bạn cũng sẽ thấy các biểu thức khác nhau mà bạn có thể sử dụng để sửa đổi dữ liệu sẽ được lưu trữ trong từ điển mới.

Bắt đầu nào!

Cách sử dụng tính năng hiểu từ điển trong Python

Trước khi chúng ta xem xét một số ví dụ, đây là cú pháp để hiểu từ điển trông như thế nào:

new_dictionary = {key: value for (key,value) in iterable}

Trong cú pháp trên, keyvalue đại diện cho khóa và giá trị trong từ điển ban đầu. Bất kỳ thao tác nào bạn thực hiện trên chúng sẽ xác định khóa/giá trị trong từ điển mới — bạn sẽ sớm hiểu điều này rõ hơn với một số ví dụ.

Các keyvalue trong ngoặc đơn – (key, value) – vẫn giống như những gì chúng tôi đã đề cập ở trên. Trong trường hợp này, chúng được sử dụng trong một for vòng.

Vì vậy, bất kỳ thao tác nào bạn thực hiện trên keyvalue sẽ được vòng lặp sử dụng để áp dụng thao tác đó trên mọi mục mà thao tác đó được liên kết trong từ điển ban đầu.

Đọc thêm  Chuỗi Python thành mảng – Cách chuyển đổi văn bản thành danh sách

iterable, trong cú pháp, biểu thị một đối tượng có thể lặp lại. Trong trường hợp của chúng tôi, nó biểu thị từ điển ban đầu.

Hãy xem xét một số ví dụ để giúp bạn hiểu những lời giải thích ở trên.

items_in_cm = {'pen': 40, 'book': 50, 'keyboard': 60}

Trong đoạn mã trên, chúng tôi đã tạo một từ điển với ba mục. Các khóa là tên của các mục trong khi các giá trị là chiều dài của các mục này tính bằng centimet.

Sử dụng khả năng hiểu từ điển, chúng tôi sẽ tạo một từ điển mới với độ dài của từng mục tính bằng mét.

Đây là cách nó hoạt động:

items_in_cm = {'pen': 40, 'book': 50, 'keyboard': 60}

items_in_meters = {key: value/100 for (key, value) in items_in_cm.items()}

print(items_in_meters)
# {'pen': 0.4, 'book': 0.5, 'keyboard': 0.6}

Điều cần chú ý là ở dòng thứ hai ở trên: items_in_meters = {key: value/100 for (key, value) in items_in_cm.items()}

Hãy chia nhỏ nó ra.

Phần đầu có cái này: key: value/100. Điều này ngụ ý rằng mỗi value trong từ điển là chia hết cho 100.

Nhưng tra từ điển vẫn chưa hiểu áp dụng câu lệnh trên vào đâu.

Điều này dẫn chúng ta đến phần thứ hai: for (key, value) in items_in_cm.items(). Phần này mã có một for vòng lặp có hai tham số — keyvalue.

Vì vậy, điều này sẽ chạy qua mọi khóa và giá trị trong items_in_cm từ điển và chia mỗi giá trị cho 100.

Chúng tôi có thể truy cập các mục trong từ điển đó bằng cách sử dụng items() phương thức trả về mọi cặp khóa và giá trị trong từ điển.

In từ điển mới (items_in_meters), chúng tôi có thứ này: {'pen': 0.4, 'book': 0.5, 'keyboard': 0.6}. Mọi giá trị trong từ điển mới đã được chia cho 100.

Đọc thêm  Cách sử dụng PostgreSQL trong Python

Bạn sẽ nhận thấy rằng chúng tôi chỉ thay đổi dữ liệu trong các giá trị của từ điển. Bạn cũng có thể sửa đổi các phím. Đây là một ví dụ:

items_in_cm = {'pen': 40, 'book': 50, 'keyboard': 60}

items_in_meters = {key + ' in meters': value/100 for (key, value) in items_in_cm.items()}

print(items_in_meters)
# {'pen in meters': 0.4, 'book in meters': 0.5, 'keyboard in meters': 0.6}

Trong ví dụ trên, chúng tôi đã thêm một chuỗi vào mỗi khóa trong phần hiểu từ điển: key + ' in meters'.

Cách sử dụng câu điều kiện trong việc hiểu từ điển trong Python

Trong phần này và phần tiếp theo, bạn sẽ tìm hiểu về các biểu thức khác mà bạn có thể sử dụng để sửa đổi các mục được lưu trữ trong từ điển được tạo bằng cách hiểu từ điển.

Chúng ta sẽ bắt đầu với các câu điều kiện.

developers = {'Jane': 'Python', 'Jade': 'JavaScript', 'John': 'Python', 'Doe': 'JavaScript'}

python_developers = {key: value for (key, value) in developers.items() if value == 'Python'}

print(python_developers)
# {'Jane': 'Python', 'John': 'Python'}

Trong ví dụ trên, chúng tôi đã tạo một từ điển có tên developers nơi lưu trữ danh sách các nhà phát triển với ngôn ngữ yêu thích của họ: {'Jane': 'Python', 'Jade': 'JavaScript', 'John': 'Python', 'Doe': 'JavaScript'}.

Trong phần hiểu từ điển, chúng tôi đã thêm một biểu thức vào cuối: if value == 'Python'. Thao tác này sẽ quét qua và trả về tất cả các mục có value có giá trị là ‘Python’.

Khi được in ra, chúng tôi có cái này trong bảng điều khiển: {'Jane': 'Python', 'John': 'Python'}.

Chúng ta cũng có thể sử dụng một if/else tuyên bố trong sự hiểu biết từ điển. Đây là một ví dụ:

random_items = {'monitor': 100, 'pen': 40, 'keyboard': 60, 'pencil': 30}

items_length_check = {key: ('above 50' if value > 50 else 'below 50') for (key, value) in random_items.items()}

print(items_length_check)
# {'monitor': 'above 50', 'pen': 'below 50', 'keyboard': 'above 50', 'pencil': 'below 50'}

Sử dụng một if/else ở trên, chúng tôi đã sửa đổi các giá trị trong từ điển mới. Các value đối với mỗi mục sẽ là “trên 50” nếu giá trị trong từ điển ban đầu trên 50 và “dưới 50” nếu dưới 50.

Đọc thêm  Biến in Python – Cách in chuỗi và biến

Mã trong phần hiểu từ điển bắt đầu trông cồng kềnh. Chúng ta sẽ làm sạch nó trong phần tiếp theo bằng cách sử dụng một hàm.

Cách sử dụng một hàm trong việc hiểu từ điển trong Python

Khi sử dụng khả năng hiểu từ điển, bạn có thể sử dụng các hàm để thay thế/trích xuất logic sẽ đi vào dấu ngoặc nhọn của khả năng hiểu từ điển. Điều này giúp giữ cho mã gọn gàng và dễ đọc.

random_items = {'monitor': 100, 'pen': 40, 'keyboard': 60, 'pencil': 30}

def check_length(value):
    if value >50:
        return 'above 50'
    else:
        return 'below 50'

items_length_check = {key: check_length(value) for (key, value) in random_items.items()}


print(items_length_check)
# {'monitor': 'above 50', 'pen': 'below 50', 'keyboard': 'above 50', 'pencil': 'below 50'}

Ví dụ trên tương tự như ví dụ trong phần trước.

Chúng tôi đã thực hiện một thay đổi lớn — trích xuất logic trong phần hiểu từ điển và đặt nó vào một hàm. Đó là:

def check_length(value):
    if value >50:
        return 'above 50'
    else:
        return 'below 50'

Sau đó, chúng tôi đặt tên hàm trong cách hiểu từ điển: items_length_check = {key: check_length(value) for (key, value) in random_items.items()}.

Khi mã trong phần hiểu từ điển chạy, chức năng này sẽ được kích hoạt.

Tóm lược

Trong bài viết này, chúng tôi đã nói về cách hiểu từ điển trong Python. Bạn có thể sử dụng nó để tạo từ điển mới từ những từ hiện có.

Chúng tôi đã thấy cú pháp và cách sử dụng khả năng hiểu từ điển.

Chúng tôi cũng đã xem các ví dụ cho thấy cách sử dụng các câu lệnh và hàm có điều kiện khi làm việc với việc hiểu từ điển.

Chúc mừng mã hóa!



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status