คลาส Time
มีไว้ผลิตอ็อบเจกต์ที่แทนเวลา ภายในอ็อบเจกต์มีตัวแปร hour
, minute
, และ second
เก็บเลขชั่วโมง นาที และวินาที (เป็น int) ตามลำดับ จงเขียนคลาสนี้พร้อมด้วยเมท็อด __init__
เพื่อให้สามารถสร้างอ็อบเจกต์ Time
ที่แทนเวลา 10 โมงครึ่ง ด้วยคำสั่ง Time(10, 30, 0)
class Time:
def __init__(self, h, m, s):
self.hour = h
self.minute = m
self.second = s
import types
emptyobj = types.SimpleNamespace()
q = "`"
clsname = "Time"
mname = "__init__"
qclsname = q+clsname+q
qmname = q+mname+q
Ex().check_class_def(clsname, missing_msg="ไม่พบคลาส " + qclsname).\
check_body().check_function_def(mname, missing_msg="ไม่พบเมท็อด " + qmname).multi(
has_equal_part_len('args', qmname + " รับพารามิเตอร์สี่ตัว"),
check_args('self', missing_msg = "ช่วยเขียนพารามิเตอร์ตัวแรกของ "+ qmname + " ให้เป็น `self`"),
check_body().set_context(emptyobj,11,22,33).multi(
has_equal_value(name = 'self.hour', #error_msg = "ไม่มี self.hour",
incorrect_msg = "ตั้งค่าให้ self.hour ไม่ถูกต้อง"),
has_equal_value(name = 'self.minute', #error_msg = "ไม่มี self.minute",
incorrect_msg = "ตั้งค่าให้ self.minute ไม่ถูกต้อง"),
has_equal_value(name = 'self.second', #error_msg = "ไม่มี self.second",
incorrect_msg = "ตั้งค่าให้ self.second ไม่ถูกต้อง")
)
)
คลาส Time
มีไว้ผลิตอ็อบเจกต์ที่แทนเวลา ภายในอ็อบเจกต์มีตัวแปร hour
, minute
, และ second
เก็บเลขชั่วโมง นาที และวินาที (เป็น int) ตามลำดับ จงเขียนคลาสนี้พร้อมด้วยเมท็อด __init__
เพื่อให้สามารถสร้างอ็อบเจกต์ Time
ที่แทนเวลา 10 โมงครึ่ง ด้วยคำสั่ง Time(10, 30)
ข้อนี้ต่างจากข้อที่แล้ว ตรงที่การสร้างอ็อบเจกต์จะกำหนดแค่เลขชั่วโมงกับนาทีเท่านั้น เลขวินาทีจะถูกตั้งเป็น 0 เอง
class Time:
def __init__(self, h, m):
self.hour = h
self.minute = m
self.second = 0
import types
emptyobj = types.SimpleNamespace()
q = "`"
clsname = "Time"
mname = "__init__"
qclsname = q+clsname+q
qmname = q+mname+q
Ex().check_class_def(clsname, missing_msg="ไม่พบคลาส " + qclsname).\
check_body().check_function_def(mname, missing_msg="ไม่พบเมท็อด " + qmname).multi(
has_equal_part_len('args', qmname + " รับพารามิเตอร์สามตัว"),
check_args('self', missing_msg = "ช่วยเขียนพารามิเตอร์ตัวแรกของ "+ qmname + " ให้เป็น `self`"),
check_body().set_context(emptyobj,11,22).multi(
has_equal_value(name = 'self.hour', #error_msg = "ไม่มี self.hour",
incorrect_msg = "ตั้งค่าให้ self.hour ไม่ถูกต้อง"),
has_equal_value(name = 'self.minute', #error_msg = "ไม่มี self.minute",
incorrect_msg = "ตั้งค่าให้ self.minute ไม่ถูกต้อง"),
has_equal_value(name = 'self.second', #error_msg = "ไม่มี self.second",
incorrect_msg = "self.second ต้องมีค่าเป็น 0")
)
)
คลาส Time
มีไว้ผลิตอ็อบเจกต์ที่แทนเวลา ภายในอ็อบเจกต์มีตัวแปร hour
, minute
, และ second
เก็บเลขชั่วโมง นาที และวินาที (เป็น int) ตามลำดับ จงเขียนคลาสนี้พร้อมด้วยเมท็อด __init__
เพื่อให้สามารถสร้างอ็อบเจกต์ Time
ที่แทนเวลา 10 โมงครึ่ง ด้วยคำสั่ง Time("10:30:00")
(ข้อนี้ต่างจากข้อก่อนนี้ ตรงข้อมูลที่ส่งให้สร้างอ็อบเจกต์ในข้อนี้เป็นสตริงในรูปแบบ ชั่วโมง นาที วินาทีที่คั่นด้วย : )
class Time:
def __init__(self, t):
x = t.split(":")
self.hour = int(x[0])
self.minute = int(x[1])
self.second = int(x[2])
import types
emptyobj = types.SimpleNamespace()
q = "`"
clsname = "Time"
mname = "__init__"
qclsname = q+clsname+q
qmname = q+mname+q
Ex().check_class_def(clsname, missing_msg="ไม่พบคลาส " + qclsname).\
check_body().check_function_def(mname, missing_msg="ไม่พบเมท็อด " + qmname).multi(
has_equal_part_len('args', qmname + " รับพารามิเตอร์สองตัว"),
check_args('self', missing_msg = "ช่วยเขียนพารามิเตอร์ตัวแรกของ "+ qmname + " ให้เป็น `self`"),
check_body().set_context(emptyobj,"11:22:33").multi(
has_equal_value(name = 'self.hour', #error_msg = "ไม่มี self.hour",
incorrect_msg = "ตั้งค่าให้ self.hour ไม่ถูกต้อง"),
has_equal_value(name = 'self.minute', #error_msg = "ไม่มี self.minute",
incorrect_msg = "ตั้งค่าให้ self.minute ไม่ถูกต้อง"),
has_equal_value(name = 'self.second', #error_msg = "ไม่มี self.second",
incorrect_msg = "ตั้งค่าให้ self.second ไม่ถูกต้อง")
)
)