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下的Softmax回归函数的实现方法(推荐)
Jan 26 Python
详解tensorflow实现迁移学习实例
Feb 10 Python
使用Python3内置文档高效学习以及官方中文文档
May 19 Python
Python 中Django验证码功能的实现代码
Jun 20 Python
Django缓存系统实现过程解析
Aug 02 Python
python3.7环境下安装Anaconda的教程图解
Sep 10 Python
python日期与时间戳的各种转换示例
Feb 12 Python
Python标准库json模块和pickle模块使用详解
Mar 10 Python
Python Merge函数原理及用法解析
Sep 16 Python
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
Oct 23 Python
python 中的@运算符使用
May 26 Python
python 进阶学习之python装饰器小结
Sep 04 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
福利彩票幸运号码自动生成器
2006/10/09 PHP
实用函数7
2007/11/08 PHP
php日历[测试通过]
2008/03/27 PHP
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
2013/06/28 PHP
php5.4传引用时报错问题分析
2016/01/22 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
Javascript调用C#代码
2011/01/17 Javascript
jquery 按键盘上的enter事件
2014/05/11 Javascript
点评js异步加载的4种方式
2015/12/22 Javascript
JavaScript实现Base64编码转换
2016/04/23 Javascript
BootStrap Fileinput上传插件使用实例代码
2017/07/28 Javascript
微信小程序 swiper组件构建轮播图的实例
2017/09/20 Javascript
详解Vue单元测试case写法
2018/05/24 Javascript
vue中使用codemirror的实例详解
2018/11/01 Javascript
vue进入页面时不在顶部,检测滚动返回顶部按钮问题及解决方法
2019/10/30 Javascript
jQuery实现tab栏切换效果
2020/12/22 jQuery
Python中的两个内置模块介绍
2015/04/05 Python
python查看FTP是否能连接成功的方法
2015/07/30 Python
python儿童学游戏编程知识点总结
2019/06/03 Python
python 函数中的内置函数及用法详解
2019/07/02 Python
python 生成器和迭代器的原理解析
2019/10/12 Python
Python中的Cookie模块如何使用
2020/06/04 Python
python爬虫爬取淘宝商品比价(附淘宝反爬虫机制解决小办法)
2020/12/03 Python
canvas绘制表情包的示例代码
2018/07/09 HTML / CSS
HTML5微信播放全屏问题的解决方法
2017/03/09 HTML / CSS
加拿大便宜的隐形眼镜商店:Clearly
2016/09/15 全球购物
中国包裹转运寄送国际服务:Famiboat
2019/07/24 全球购物
Kickers鞋英国官网:男士、女士和儿童鞋
2021/03/08 全球购物
给女儿的表扬信
2014/01/18 职场文书
让生命充满爱演讲稿
2014/05/10 职场文书
文秘专业应届生求职信
2014/05/26 职场文书
单位单身证明样本
2014/10/11 职场文书
邀请函范文
2015/02/02 职场文书
现实表现证明材料
2015/06/19 职场文书
服装店员工管理制度
2015/08/07 职场文书