Bắt đầu ngayBắt đầu miễn phí

Kiểm tra kiểu giá trị trả về

Tính linh hoạt của Python về kiểu dữ liệu thường được xem là một ưu điểm của ngôn ngữ. Tuy vậy, đôi khi nó có thể gây rắc rối nếu các kiểu dữ liệu không đúng bị bỏ sót. Bạn quyết định rằng để đảm bảo mã của bạn làm đúng chính xác những gì bạn muốn, bạn sẽ kiểm tra tường minh kiểu giá trị trả về trong tất cả các hàm và đảm bảo chúng trả về đúng như kỳ vọng. Để làm điều đó, bạn sẽ tạo một decorator kiểm tra xem kiểu trả về của hàm được trang trí có đúng hay không.

Lưu ý: assert là một từ khóa bạn có thể dùng để kiểm tra một điều kiện có đúng hay không. Nếu bạn gõ assert conditionconditionTrue, lệnh này không làm gì cả. Nếu conditionFalse, lệnh này sẽ phát sinh lỗi. Kiểu lỗi được phát sinh gọi là AssertionError.

Bài tập này là một phần của khóa học

Viết hàm trong Python

Xem khóa học

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

def returns_dict(func):
  # Complete the returns_dict() decorator
  def wrapper(____):
    result = ____
    assert type(result) == dict
    return result
  ____
  
@returns_dict
def foo(value):
  return value

try:
  print(foo([1,2,3]))
except AssertionError:
  print('foo() did not return a dict!')
  
Chỉnh sửa và Chạy Mã