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 相关文章推荐
用yum安装MySQLdb模块的步骤方法
Dec 15 Python
wxPython之解决闪烁的问题
Jan 15 Python
python 获取文件下所有文件或目录os.walk()的实例
Apr 23 Python
解决python删除文件的权限错误问题
Apr 24 Python
python实现pdf转换成word/txt纯文本文件
Jun 07 Python
学生信息管理系统python版
Oct 17 Python
python实现彩色图转换成灰度图
Jan 15 Python
如何通过python实现全排列
Feb 11 Python
解决Python中导入自己写的类,被划红线,但不影响执行的问题
Jul 13 Python
python 匿名函数与三元运算学习笔记
Oct 23 Python
使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
Feb 07 Python
python实现b站直播自动发送弹幕功能
Feb 20 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
长波有什么东西
2021/03/01 无线电
php 大数据量及海量数据处理算法总结
2011/05/07 PHP
php开启与关闭错误提示适用于没有修改php.ini的权限
2014/10/16 PHP
js 键盘记录实现(兼容FireFox和IE)
2010/02/07 Javascript
JavaScript实现获取dom中class的方法
2015/02/09 Javascript
jQuery实现预加载图片的方法
2015/03/17 Javascript
jQuery使用hide方法隐藏页面上指定元素的方法
2015/03/30 Javascript
jQuery实现自动调整字体大小的方法
2015/06/15 Javascript
AngularJS中的过滤器使用详解
2015/06/16 Javascript
javascript实现列表滚动的方法
2015/07/30 Javascript
JS+CSS实现带有碰撞缓冲效果的竖向导航条代码
2015/09/15 Javascript
javascript解决小数的加减乘除精度丢失的方案
2016/05/31 Javascript
js实现仿购物车加减效果
2017/03/01 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
2017/08/06 Javascript
AngularJS实现自定义指令及指令配置项的方法
2017/11/20 Javascript
vue语法自动转typescript(解放双手)
2019/09/18 Javascript
12 种使用Vue 的最佳做法
2020/03/30 Javascript
JSONP解决JS跨域问题的实现
2020/05/25 Javascript
python实现在无须过多援引的情况下创建字典的方法
2014/09/25 Python
python简单分割文件的方法
2015/07/30 Python
Python 实现字符串中指定位置插入一个字符
2018/05/02 Python
浅谈Python traceback的优雅处理
2018/08/31 Python
Python计算IV值的示例讲解
2020/02/28 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
Python实现查找数据库最接近的数据
2020/06/08 Python
css3的transition效果和transfor效果示例介绍
2013/10/30 HTML / CSS
html5使用canvas实现图片下载功能的示例代码
2017/08/26 HTML / CSS
浅谈html5之sse服务器发送事件EventSource介绍
2017/08/28 HTML / CSS
详解HTML5常用的语义化标签
2019/09/27 HTML / CSS
受希腊女神灵感的晚礼服、鸡尾酒礼服和婚纱:THEIA
2018/04/15 全球购物
成考报名单位证明范本
2014/01/16 职场文书
中学生个人自我评价
2014/02/06 职场文书
大学新生军训感言
2014/02/25 职场文书
学校政风行风自查自纠报告
2014/10/21 职场文书
2014年环卫工作总结
2014/11/22 职场文书
党员志愿者服务倡议书
2015/04/29 职场文书