เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การแสดงผลออบเจกต์เป็นสตริง

Python มีเมธอดพิเศษ 2 ตัวที่ใช้คืนค่าการแสดงผลออบเจกต์เป็นสตริง ได้แก่ __str__() ซึ่งถูกเรียกเมื่อใช้ print() หรือ str() กับออบเจกต์ และ __repr__() ซึ่งถูกเรียกเมื่อใช้ repr() กับออบเจกต์ แสดงออบเจกต์ในคอนโซลโดยไม่ผ่าน print() หรือเรียกแทน __str__() เมื่อยังไม่ได้กำหนด __str__() ไว้

__str__() ควรให้ผลลัพธ์ที่ "อ่านง่ายสำหรับผู้ใช้" เพื่ออธิบายออบเจกต์ ส่วน __repr__() ควรคืนค่านิพจน์ที่เมื่อประมวลผลแล้วจะได้ออบเจกต์เดิม เพื่อให้โค้ดทำซ้ำได้

ในแบบฝึกหัดนี้ จะทำงานต่อจากคลาส Employee ในบทที่ 2

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Python เบื้องต้นสำหรับการเขียนโปรแกรมเชิงวัตถุ

ดูคอร์ส

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

class Employee:
    def __init__(self, name, salary=30000):
        self.name, self.salary = name, salary
      
    # Add the __repr__() method  
    ____   

emp1 = Employee("Amar Howard", 30000)
print(repr(emp1))
emp2 = Employee("Carolyn Ramirez", 35000)
print(repr(emp2))
แก้ไขและรันโค้ด