CodeGym /Các khóa học /Python SELF VI /Kiểm tra sự hiện diện của phần tử trong dictionary

Kiểm tra sự hiện diện của phần tử trong dictionary

Python SELF VI
Mức độ , Bài học
Có sẵn

4.1 Kiểm tra sự hiện diện của key trong dictionary

Có một số cách để kiểm tra xem key có được chứa trong dictionary hay không, mỗi cách đều có đặc điểm và ứng dụng riêng.

Toán tử in

Cách phổ biến và hiệu quả nhất để kiểm tra sự hiện diện của key trong dictionary là sử dụng toán tử in. Phương pháp này trả về True nếu key có mặt trong dictionary, và False nếu không.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Kiểm tra sự hiện diện của các key "name" và "country" trong dictionary
print("name" in person)  # Kết quả: True
print("country" in person)  # Kết quả: False

# Ví dụ sử dụng trong câu điều kiện
if "age" in person:
    print("Key 'age' có mặt trong dictionary.")
else:
    print("Key 'age' không có mặt trong dictionary.")

Phương thức get()

Phương thức get() cho phép bạn lấy giá trị theo key một cách an toàn, trả về None hoặc giá trị mặc định mà bạn chỉ định nếu key không tồn tại. Bạn có thể sử dụng phương thức này để kiểm tra sự hiện diện của key bằng cách kiểm tra xem nó có trả về None hay không.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Lấy giá trị theo key "age"
value = person.get("age")

# Kiểm tra sự hiện diện của key "age" trong dictionary
if value is not None:
    print("Key 'age' có mặt trong dictionary.")
else:
    print("Key 'age' không có mặt trong dictionary.")

Phương thức keys()

Phương thức keys() trả về một view của tất cả các key trong dictionary. Bạn có thể kiểm tra sự hiện diện của key bằng cách sử dụng toán tử in để duyệt qua view này.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Kiểm tra sự hiện diện của key "name" trong view các key của dictionary
if "name" in person.keys():
    print("Key 'name' có mặt trong dictionary.")
else:
    print("Key 'name' không có mặt trong dictionary.")

4.2 Kiểm tra sự hiện diện của phần tử trong dictionary

Nếu bạn muốn kiểm tra dictionary có chứa giá trị cụ thể nào không, thì có một số cách đơn giản:

Sử dụng phương thức values()

Phương thức values() trả về một view của tất cả các giá trị trong dictionary. Bạn có thể sử dụng toán tử in để kiểm tra sự hiện diện của giá trị trong view này.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Kiểm tra sự hiện diện của giá trị 25 trong dictionary
if 25 in person.values():
    print("Giá trị 25 có mặt trong dictionary.")
else:
    print("Giá trị 25 không có mặt trong dictionary.")

Sử dụng hàm set()

Bạn có thể chuyển đổi view các giá trị thành một set và sau đó sử dụng toán tử in để kiểm tra sự hiện diện của giá trị.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Chuyển đổi view các giá trị thành set
values_set = set(person.values())

# Kiểm tra sự hiện diện của giá trị "New York" trong set các giá trị
if "New York" in values_set:
    print("Giá trị 'New York' có mặt trong dictionary.")
else:
    print("Giá trị 'New York' không có mặt trong dictionary.")

Sử dụng generator

Bạn có thể sử dụng generator để kiểm tra sự hiện diện của giá trị trong dictionary. Cách này sẽ cung cấp mã nguồn ngắn gọn và dễ đọc hơn.


person = {"name": "Alice", "age": 25, "city": "New York"}
value_to_find = 25

# Sử dụng generator để kiểm tra sự hiện diện của giá trị
if any(value == value_to_find for value in person.values()):
    print(f"Giá trị {value_to_find} có mặt trong dictionary.")
else:
    print(f"Giá trị {value_to_find} không có mặt trong dictionary.")

Các đối tượng trả về của values() có thể không duy nhất, vì vậy khi tìm kiếm nhiều phần tử, có thể hữu ích khi chuyển đổi chúng sang một set trước và sau đó làm việc với set các phần tử đó.

Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION