博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字典及datetime模块
阅读量:5892 次
发布时间:2019-06-19

本文共 1734 字,大约阅读时间需要 5 分钟。

字典 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秒后执行,将当前线程阻塞

转载于:https://blog.51cto.com/13445354/2376530

你可能感兴趣的文章
显示刚刚添加的最后一条数据,access,选择语句,select
查看>>
贪吃蛇逻辑代码
查看>>
实现c协程
查看>>
ASP.NET视频教程 手把手教你做企业论坛网站 视频教程
查看>>
[LeetCode] Meeting Rooms II
查看>>
从Swift学习iOS开发的路线指引
查看>>
3.1链表----链表(Linked List)入门
查看>>
[布局] bootstrap基本标签总结
查看>>
异步编程思想
查看>>
"数学口袋精灵"bug(团队)
查看>>
2017python第六天作业 面向对象 本节作业: 选课系统
查看>>
【找规律】Divide by Zero 2017 and Codeforces Round #399 (Div. 1 + Div. 2, combined) B. Code For 1...
查看>>
Scribes:小型文本编辑器,支持远程编辑
查看>>
为什么要使用 SPL中的 SplQueue实现队列
查看>>
文件的相关操作(创建、打开、写入、读出、重命名)
查看>>
品尝阿里云容器服务:用nginx镜像创建容器,体验基于域名的路由机制
查看>>
PHP const关键字
查看>>
ssh 安装笔记
查看>>
游戏音效下载网站大全
查看>>
angular $resouse服务
查看>>