函数的内置模块2

1,

time:   3种    时间戳       结构化时间     字符串时间

             

import time
f = time.time() #确认现在的时间
f1 = f - 120 #将时间往前推2分钟
f2 = time.localtime(f1) #将时间戳转化成结构化时间
f3 = time.strftime('%Y/%m/%d %X',f2) #再讲结构化时间转化成字符串时间
print(f3)

时间戳 --> 结构化时间 time.localtime(时间戳)
结构化时间 -->时间戳 time.maketime(结构化时间)
结构化时间 -->字符串时间 time.strftime(格式,结构化时间) #时间格式可以不用全写
字符串时间 -->结构化时间 time.strptime(字符串时间,格式) #时间格式必须一一对应

 

 

 

时间格式书写的标准:

%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身

 

 

结构化时间:元组(struct_time) struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天等)

 

 

2,

datetime

print(datetime.now())        获取现在的 * (时间对象)

f = datetime.timestamp (datetime.now())     将时间对象转换成时间戳

datetime.fromtimestamp(f)                           将时间戳转化成时间对象
datetime.strptime(字符串时间,格式)             将字符串时间转成时间对象

datetime.strftime(时间对象,格式)                 将时间对象转换成字符串时间

 

 

重要*******

from   datetime  import  datetime,timedelta

print(datetime.now() - timedelta(减去的时间,例如小时,天数,分钟))                         ********

不用来回转换,在datetime内置模块下,可以直接用现在的时间对象减去允许的想要减去或加上的时间

 

 

 

3,collections         数据类型补充

Counter

from  collections  import   Counter
c = Counter('aqsfgggwQSFWEGG') #用来计算每个元素出现的次数
print(c)
print(dict(c)) #直接dict包住,可以将之转换成字典模式



namedtuple

from  collections  import  namedtuple
tu = namedtuple('juge',['name','age','sex','hobby']) #类
t = tu('腚哥',19,'待定','抽烟,喝酒,烫头') #示例一个对象
print(t) #得到的结果明确标明给个元素的意思
print(t[0]) #对象找属性

 

 

from collections import deque
# 双端队列

d = deque([1,2,3,4])
# d.append(5) #右边添加
# print(d)
#
# d.appendleft(10) # 左边添加
# print(d)
#
# d.insert(2,99) #从中间随意为之添加
# print(d)
#
# d.remove(3) #移除某个元素
# print(d)
#
# print(d.pop()) #默认删除最后一个元素
# print(d)

# print(d.popleft()) #从左侧开始删除
# print(d)




#队列 栈

# FIFO 先进先出
# 后进先出 先进后去

 


 collections:
# deque: 双端队列
    # 两头都可添加也可以删除
    # 队列  先进先出
    # 栈    先进后出
# Counter: 计数
    # 计数 统计元素出现次数,以字典形式显示
    # Counter({1:2})  这种咱们可以直接dict()转换
# defaultdict: 默认字典

    

from  collections  import   defaultdict
li = [('红色',1),('黄色',1),('绿色',1),('蓝色',1),('红色',5),('绿色',1),('绿色',1),('绿色',1)]

d = defaultdict(list)
for i in li:
d[i[0]].append(i[1])
print(d)


dd = dict(d)

for em in dd:
dd[em] = sum(dd[em])

print(dd)


#     利用他的特性:来实现一些非常简单的操作


# namedtuple: 命名元组
#     作用:将元组中的元素进行标明(让别人知道这元素是什么意思)

posted @ 2019-03-20 17:33  socoolonly1  阅读(66)  评论(0)    收藏  举报