Có cách nào để kiểm tra xem biến có giữ lambda
không? Bối cảnh là tôi muốn kiểm tra một loại trong một thử nghiệm đơn vị:Làm cách nào để kiểm tra xem biến có chứa lambda không?
self.assertEquals(lambda, type(myVar))
Các type
có vẻ là "chức năng", nhưng tôi không thấy bất kỳ loại BUILTIN rõ ràng để phù hợp với nó. Rõ ràng, tôi có thể viết những dòng này, nhưng nó cảm thấy vụng về:
self.assertEquals(type(lambda m: m), type(myVar))
Không đặt câu hỏi là "wiki cộng đồng". –
Tôi không đăng câu trả lời cho câu hỏi "wiki" như một quy tắc (quá nhiều cơn đau đầu), nhưng câu trả lời ngắn gọn là: không. Lambda không phải là một loại trong Python, nó chỉ là viết tắt để khai báo một hàm. Việc phân biệt giữa chúng là vô nghĩa; không có sự khác biệt. –