python根据时间生成mongodb的ObjectId的方法


Posted in Python onMarch 13, 2015

本文实例讲述了python根据时间生成mongodb的ObjectId的方法。分享给大家供大家参考。具体分析如下:

mongodb的_id为ObjectId类型,ObjectId内是包含时间戳信息的,这样我们在保存数据的时候就不需要再单独记录一个添加时间了,如果需要按照时间查询,我们可以先把时间变化成可查询的ObjectId,再通过_id字段查询,由于mongodb的_id是主键,查询效率非常高。下面的函数给出了如何把时间换算成ObjectId,同时该函数还可以指定时间的偏移量,比如多少天前的时间。

def object_id_from_datetime(from_datetime=None,span_days=0,span_hours=0,span_minutes=0,span_seconds=0,span_weeks=0):

    '''根据时间手动生成一个objectid,此id不作为存储使用'''

    if not from_datetime:

        from_datetime = datetime.datetime.now()

    from_datetime = from_datetime + datetime.timedelta(days=span_days,hours=span_hours,minutes=span_minutes,weeks=span_weeks)

    return ObjectId.from_datetime(generation_time=from_datetime)

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python异常处理总结
Aug 15 Python
windows下pycharm安装、创建文件、配置默认模板
Jul 31 Python
Python3 使用cookiejar管理cookie的方法
Dec 28 Python
Python 处理图片像素点的实例
Jan 08 Python
pandas dataframe的合并实现(append, merge, concat)
Jun 24 Python
Python三元运算与lambda表达式实例解析
Nov 30 Python
Java Spring项目国际化(i18n)详细方法与实例
Mar 20 Python
Python调用.net动态库实现过程解析
Jun 05 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
Feb 03 Python
Pytorch 使用tensor特定条件判断索引
Apr 08 Python
python中__slots__节约内存的具体做法
Jul 04 Python
Python中Selenium对Cookie的操作方法
Jul 09 Python
python实现根据窗口标题调用窗口的方法
Mar 13 #Python
Python实现遍历windows所有窗口并输出窗口标题的方法
Mar 13 #Python
Python实现windows下模拟按键和鼠标点击的方法
Mar 13 #Python
Python实现测试磁盘性能的方法
Mar 12 #Python
Python解析xml中dom元素的方法
Mar 12 #Python
Python实现Tab自动补全和历史命令管理的方法
Mar 12 #Python
Python实现将n个点均匀地分布在球面上的方法
Mar 12 #Python
You might like
php录入页面中动态从数据库中提取数据的实现
2006/10/09 PHP
php sprintf()函数让你的sql操作更安全
2008/07/23 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
2014/06/23 PHP
PHP的AES加密算法完整实例
2016/07/20 PHP
yii2高级应用之自定义组件实现全局使用图片上传功能的方法
2016/10/08 PHP
Laravel框架验证码类用法实例分析
2019/09/11 PHP
在你的网页中嵌入外部网页的方法
2007/04/02 Javascript
List the Codec Files on a Computer
2007/06/11 Javascript
jquery 之 $().hover(func1, funct2)使用方法
2012/06/14 Javascript
只需一行代码,轻松实现一个在线编辑器
2013/11/12 Javascript
给应用部分的js代码设定一个统一的入口
2014/06/15 Javascript
实践中学习AngularJS表单
2016/03/21 Javascript
Js得到radiobuttonlist选中值的两种方法(推荐)
2016/08/25 Javascript
js倒计时小实例(多次定时)
2016/12/08 Javascript
vue移动端弹框组件的实例
2018/09/25 Javascript
Vue Object 的变化侦测实现代码
2020/04/15 Javascript
vue中实现点击变成全屏的多种方法
2020/09/27 Javascript
用Nodejs实现在终端中炒股的实现
2020/10/18 NodeJs
python with statement 进行文件操作指南
2014/08/22 Python
Python爬取Coursera课程资源的详细过程
2014/11/04 Python
Python NumPy库安装使用笔记
2015/05/18 Python
python中import学习备忘笔记
2017/01/24 Python
python list格式数据excel导出方法
2018/10/31 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
HTML5 Canvas图像模糊完美解决办法
2018/02/06 HTML / CSS
香港时装购物网站:ZALORA香港
2017/04/23 全球购物
幼儿园教师工作制度
2014/01/22 职场文书
会计电算化毕业生自荐信
2014/03/03 职场文书
工厂采购员岗位职责
2014/04/08 职场文书
党员干部反四风民主生活会对照检查材料思想汇报
2014/10/12 职场文书
党风廉正建设个人工作总结
2015/03/06 职场文书
幼儿园教师工作总结2015
2015/04/02 职场文书
幼儿园辞职信
2015/05/13 职场文书
pandas中关于apply+lambda的应用
2022/02/28 Python
MySQL中的全表扫描和索引树扫描
2022/05/15 MySQL
Go web入门Go pongo2模板引擎
2022/05/20 Golang