字典及datetime模块
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字典及datetime模块相关的知识,希望对你有一定的参考价值。
字典 dict
可变的、无序的、key不重复,key可哈希
定义方式
d1 = dict()
d1 = {}
d1 = {1:1,‘2‘:2,‘a‘:[3,4]}
d1 = dict([1,2),[‘a‘,300],{10,2}]) 必须是二元,{}key碰机会
d1 = dict(a=1,b=2,c=3)
d2 = dict(d1,f=100)
dict.fromkeys(range(10),‘abcd‘)
查找
d1.get(1,2):不会报错,没有返回none
d1.setdefault(9,1000):#返回key对应的value
#如果没找到自动创建k-v对并打印值
增加
d1.update ({1:100,2:200}) #已存在就覆盖,不存在添加
d1.update(((3,300),),a = ‘abc‘)
删除
d8.pop(key[,d]) #没有会报错,输入缺省值(返回值d)可以不报错
d8.popitem() #随机移除一个任意的键值对
d8.clear() #清空
del d8[key] #移除对应的k-v对
遍历(for循环)
for k in d5: #遍历key
print(k)
for k in d5.keys(): #遍历key(推荐这种,明确)
print(k)
for v in d5.values(): #遍历value
print(v)
for k in d5: #遍历value
print(d5[k])
for k in d5.keys():
print(d5.get(k)) #遍历value
for item in d5.items(): #item:k-v,entry 遍历k-v对
print(item)
for item in d5.items(): 遍历k-v对
print(item[0],‘~~~‘,item[1])
for k,v in d5.items():
print(k,v)
遍历删除:
先创建列表记录key,再遍历列表使用pop删除,不能直接遍历pop删除
创建工厂方法
缺省字典
from collections import defaultdict
import random
d1 = defaultdict(list) #value 构造为list
for k in ‘abcde‘:
for v in range(random.randint(1,5)):
d1[k].append(v)
print(d1)
form collections import OrderedDict
OrderedDict() #3.6以前使用,记录k-v对插入顺序
d1 = OrderedDict()
python解析式、生成器
标准库datetime
import datetime #导入模块
datetime模块
类方法
today()返回本地时区当前时间的datetime对象
时间测试:
start = datetime.datetime.now()
delta = (datetime.datetime.now() - start).total_seconds()
datetime.datetime.now() #返回一个时间的对象
datetime.datetime.fromtimestamp(1554798579) #按照时间戳计算当前时间
d.timestamp() #返回一个当前时间戳
d.isoweekday() #调用当前星期
d.date() #调用当前日期
d.time() #调用当前时间
strptim() #将str返回到datetime对象,解析实践对象
strftime(format) ,返回字符串
例;
d6 = datetime.datetime.strptime("2009,5,3,16,29,39",%y,%m,%d,%h,%m,%s)
标准库time
import time
time.sleep(5) #睡眠5秒后执行,将当前线程阻塞
以上是关于字典及datetime模块的主要内容,如果未能解决你的问题,请参考以下文章