前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >工具 | 一些实用的 python 小建议

工具 | 一些实用的 python 小建议

作者头像
CDA数据分析师
发布2018-02-05 12:55:49
5150
发布2018-02-05 12:55:49
举报
文章被收录于专栏:CDA数据分析师CDA数据分析师

给dict设置默认值

这样能设置所有key的默认值为[],包括新添的key

setdefault一次只能设置一个值,但好处是能使用链式语法,但defaultdict更快一些

或者用fromkeys,用法dict.fromkeys(seq[, value])),value默认是国际惯例的None

列表去重的快速方法

比用set要快,来自:http://www.peterbe.com/plog/uniqifiers-benchmark

列表深复制

字典深复制

时间转换相关

1、获取今天的年月日时间(date)

两种代码效果相同

2、date -> datetime

3、datetime -> date

比较简单,直接使用datetime_object.date()即可

4、time.struct_time -> datetime

一般time.localtime()或者用time.striptime()得到的就是time.struct_time

使用位置参数

或者使用datetime.fromtimestamp,但是要注意此处的时间不能早于1970-01-01 00:00

5、计算日期之差

6、获取milliseconds(13位数字)

使用map作iterator

当将func设置为None时,可起到iterator的作用,结果类似于使用了zip,唯一的区别是map可以按最长的列表扩展。

python2.x中的itertools.zip_longest可以起到与此处map相同的效果

判断奇数

自然是使用位操作最快了

dict删除key

要删除的key数量较多(超多一半)的话,建议重新生成dict;如果数量较少,在pop和del都可以的情况下,del稍快一些

文 | quietin

原文链接:https://segmentfault.com/u/quietin

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-06-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CDA数据分析师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档