我需要写一个涉及日期的课程.我应该重载+运算符以允许将日期添加到日期.解释它Date是如何工作的:一个对象以年,月,日的格式表示为(2016,4,15).向此添加整数10应该会产生(2016,4,25).该Date班有值self.year,self.month,self.day.
我的问题是代码应该在form(Date + 10)和(10 + Date)中工作.还有Date - 1.应该在添加负数天的意义上工作.Date(2016, 4, 25) - 1回报Date(2016, 4, 24).
我的代码完美地以(Date + 10)的形式工作,但不是以(10 + D)或(D - 1)形式.
def __add__(self,value):
if type(self) != int and type(self) != Date or (type(value) != int and type(value) != Date):
raise TypeError
if type(self) == Date:
day = self.day
month = self.month
year …Run Code Online (Sandbox Code Playgroud) 我希望能够使用格式化方法打印类似"{x}"之类的东西,但花括号的性质让我感到困惑.
我试过了
'{{}}'.format(x)
Run Code Online (Sandbox Code Playgroud)
但是返回了一个值错误.有没有办法告诉python花括号是用作字符串而不是格式的参数?