import datetime
d=datetime.datetime(2018,3,5,22,44)
birthdate=datetime.datetime(2016,5,2,19,33,44)
print (d-birthdate)
diff=d-birthdate
print (diff.days) #天数
print (diff.seconds)#秒数
print (diff.total_seconds())
o=datetime.datetime(2008,8,8,20,8)
o=o+datetime.timedelta(days=100)
m=o+datetime.timedelta(days=-100)
print (m)
“”"#异常错误
语法错误 语义错误 逻辑错误
异常处理
try 有可能出现异常的代码
except 异常类型as实例:捕获待定异常
finally 不论是否异常,都会执行 ,一般是文件和数据库
raise 手动抛出异常
print ('youpin) 会出现SyntaxError 都是语法错误,代码拼写的问题 引号等
class Person:
def init(self,name):
self.name=name
p=Person(‘peter’)
print (p.name)
try:
print (p.age)
except AttributeError as e:
print (‘遇见属性异常’,e)
文件先打开,在读取,中间遇到问题,但文件没有关闭,所以用到close ,用到finally,finally里面是不管怎样,都需要执行的代码
f=open(‘data.txt’)
try:
f.read()
except:
print (‘文件操作遇到错误’)
finally:
f.close()
import unittest
def get_formatted_name(first,last):
full_name="{} {}".format(first,last)
return full_name.title()#将名字大写
print (get_formatted_name(‘tom’,‘lee’))
class NameTestCase(unittest.TestCase):
def test_title_name(self):
formatted_name=get_formatted_name(‘tom’,‘lee’)
self.assertEqual(formatted_name,“Tom Lee”)#
if name’main’:
unittest.main()#调用 assertEqual的main 方法
class CalculatorTest(unittest.TestCase):
def setUp(self):
self.c=Calculator(5,3)
def test_add(self):
self.assertEqual(8,self.c.add())
def test_subtract(self):
self.assertEqual(2,self.c.subtract())
def tearDown(self):
del self.c
if name’main’:
unittest.main()