การเปลี่ยนค่า class attribute
คุณได้เรียนรู้วิธีกำหนด class attribute และวิธีเข้าถึงจาก instance แล้ว แล้วจะเกิดอะไรขึ้นถ้าลองกำหนดค่าใหม่ให้กับ class attribute ผ่าน instance? คำตอบไม่ได้ตรงไปตรงมาอย่างที่คิด!
คลาส Player จากแบบฝึกหัดก่อนหน้าถูกกำหนดไว้แล้ว ขอให้นึกถึงโครงสร้างของมัน — มี instance attribute ชื่อ position และ class attribute สองตัวคือ MAX_SPEED กับ MAX_POSITION โดยค่าเริ่มต้นของ MAX_SPEED คือ 3
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การเขียนโปรแกรมเชิงวัตถุใน Python
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create Players p1 and p2
____
print("MAX_SPEED of p1 and p2 before assignment:")
# Print p1.MAX_SPEED and p2.MAX_SPEED
____
____
# Assign 7 to p1.MAX_SPEED
____
print("MAX_SPEED of p1 and p2 after assignment:")
# Print p1.MAX_SPEED and p2.MAX_SPEED
____
____
print("MAX_SPEED of Player:")
# Print Player.MAX_SPEED
____