如果例如小時大於23,分鐘大於60,第二大於60,我試圖拒絕數據(轉換爲0),但是我遇到問題它什麼都不做。我不確定我是不是正確地初始化我的get/set方法,或者是什麼。在類中驗證數據(增變器)
這裏是我的代碼:
class Clock(object):
def __init__(self, hour, minute, second):
self.__hour = hour
self.__minute = minute
self.__second = second
def setHour(self, hour):
self.__hour = hour
if self.__hour > 23:
self.__hour = 0
def getHour(self):
return self.__hour
def setMinute(self, minute):
self.__minute = minute
if self.__minute > 60:
self.__minute = 0
def getMinute(self):
return self.__minute
def setSecond(self, second):
self.__second = second
if self.__second > 60:
self.__second = 0
def getSecond(self):
return self.__second
def __str__(self):
if self.__hour > 11:
return 'The Time is {}:{}:{} PM'.format(self.__hour, self.__minute, self.__second)
else:
return 'The Time is {}:{}:{} AM'.format(self.__hour, self.__minute, self.__second)
stopwatch = Clock(0, 0, 0)
print(stopwatch)
watch = Clock(10, 30, 0)
print(watch)
wallclock = Clock(5, 66, 42)
print(wallclock)
您的代碼從來沒有調用任何你的方法。 – BrenBarn