Python之内置模块(datetime与collections)

获取当前时间 及指定时间

# from datetime import datetime#调用处理日期与时间的标准库
# now = datetime.now()#获取当前时间
# print(now)
# import time
# ww = time.time()#以时间戳形式获取时间
# print(ww)
# from datetime import datetime
# dt = datetime(2011,1,12,12,0)#获取指定时间
# print(dt)

 

datetime与timestamp相互转换

把1970年1月1日 00:00:00 UTC+00:00时区的时刻称为epoch time,记为0(1970年以前的时间timestamp为负数),当前时间就是相对于epoch time的秒数,称为timestamp,即时间戳。

# from datetime import datetime
# dt = datetime(2011,1,12,12,0)#获取指定时间
# print(dt)
# dt=dt.timestamp()#将时间格式转为时间戳格式
# print(dt)
# dt=datetime.fromtimestamp(dt)#将时间戳格式转为时间格式
# print(dt)

 

 

 timestamp是一个浮点数,整数位表示秒

本地时间与UTC标准时区时间

# from  datetime import datetime
# t=1294804800.0
# dt=datetime.fromtimestamp(t)#本地时间
# print(dt)
# dr=datetime.utcfromtimestamp(t)#UTC时间
# print(dr)

 

 datetime与str之间的相互转换

# from datetime import datetime
# dt= datetime.strptime('2015-6-1 18:19:59', '%Y-%m-%d %H:%M:%S')#字符串转换为时间格式
# print(dt)
# print(type(dt))
# mm= dt.strftime('%Y-%m-%d %H:%M:%S')#时间格式转换为字符串
# print(mm)
# print(type(mm))

 

 时间的加减

# from datetime import datetime,timedelta
# now=datetime.now()#显示当前时间
# print(now)
# cc=now + timedelta(hours=10)#当前时间加上10个小时
# print(cc)
# bb=now + timedelta(days=3)#当前时间加上3天
# print(bb)

collections

 collections是Python内建的一个集合模块,提供了许多有用的集合类。

namedtuple

# from collections import namedtuple
# Point = namedtuple('Point',['x','y'])#定义一个名为Point元组,是一个坐标
# p=Point(2,3)#为元组添加坐标
# print(p.x)#调用x
# print(p.y)#调用y

deque

deque是为了高效实现插入和删除操作的双向列表

# from collections import deque
# q= deque(['a','b','c'])
# print(q)
# q.append('x')#在q中末尾添加一个元素
# q.appendleft('y')#在q中第一位添加一个元素
# print(q)
# q.pop()#在q中末尾删除一个元素
# q.popleft()#在q中第一位删除一个元素
# print(q)

defaultdict

# from collections import defaultdict
# dd= defaultdict(lambda :'N/A')#当创建字典时,如果key不存在时返回一个默认值
# dd['key1']='abc'
# dd['key2']
# print(dd)

 

OrderedDict

# from collections import OrderedDict
# d=dict([('a',1),('d',3),('c',2),('b',8)])
# print(d)
# od = OrderedDict([('a',1),('d',3),('c',2),('b',8)])
# print(od)
# 
# od= OrderedDict()
# od['a']=1
# od['b']=4
# od['x']=3
# print(list(od.values()))

 

 

 OrderedDict的Key会按照插入的顺序排列,不是Key本身排序。

ChainMap

# from collections import ChainMap
# import os,argparse
# 构造缺省参数
# defaults={
#     'color':'red',
#     'user':'guest'
# }
# 构造命令行参数
# parser =argparse.ArgumentParser()
# parser.add_argument('-u','--user')
# parser.add_argument('-c','--color')
# name =parser.parse_args()
# command ={k:v for k,v in vars(name).items() if v}
# 组合成ChainMap
# combined =ChainMap(command,os.environ,defaults)
#打印参数
# print('color=%s' % combined['color'])
# print('user=%s' % combined['user'])

Counter      计数器

# from collections import Counter
# c=Counter()
# for ch in 'a;ldkq,kf,falfm':
#     c[ch]=c[ch]+1
# print(c)

 

posted @ 2020-12-08 17:52  秋叶落日  阅读(113)  评论(0编辑  收藏  举报