1. Learn
  2. /
  3. คอร์ส
  4. /
  5. การเขียนฟังก์ชันใน Python

Connected

แบบฝึกหัด

พิมพ์ประเภทของค่าที่คืนกลับมา

คุณกำลังดีบักแพ็กเกจที่พัฒนาร่วมกับเพื่อน มีบางอย่างผิดปกติกับข้อมูลที่คืนกลับมาจากฟังก์ชันหนึ่ง แต่ยังไม่แน่ใจว่าฟังก์ชันไหนเป็นต้นเหตุ บางครั้งบั๊กแอบซ่อนอยู่ในโค้ดเมื่อฟังก์ชันคืนค่ากลับมาในประเภทที่ไม่ตรงกับที่คาดไว้ เช่น ถ้าคาดว่าฟังก์ชันจะคืน numpy array แต่กลับได้ list มาแทน ก็อาจทำให้เกิดพฤติกรรมที่ไม่คาดคิดได้ เพื่อตรวจสอบว่านี่คือสาเหตุของปัญหาหรือไม่ คุณจึงตัดสินใจเขียน decorator ชื่อ print_return_type() ขึ้นมา ซึ่งจะพิมพ์ประเภทของตัวแปรที่คืนกลับมาจากทุกการเรียกฟังก์ชันที่ถูก decorate

คำแนะนำ

100 XP
  • สร้างฟังก์ชันซ้อนใน (nested function) ชื่อ wrapper() ซึ่งจะกลายเป็นฟังก์ชันที่ถูก decorate แล้ว
  • เรียกฟังก์ชันที่กำลัง decorate อยู่
  • คืนค่าฟังก์ชันที่ถูก decorate แล้วกลับออกไป